IntelliJ IDEA(八) git的使用

2022-01-30 16:43:11 字數 3412 閱讀 8926

專案管理離不開版本控制,目前主流版本控制工具大概就是svn和git,至於兩者有啥區別這裡就不詳細介紹了,如果有不明白的可以上網查資料,後期如果有機會我再開篇欄目細說,而且現在市場上git的使用率已經遠遠高於svn。我們在用idea開發專案的時候如何熟練使用git來控制**版本呢?

使用git當然需要先安裝git,安裝過程就不詳細說明了,按裝好之後,開啟idea進入設定介面(可以直接點選工具欄上的

,也可以通過快捷鍵 ctrl + alt + s ),搜尋git,介面如下:

繼續說git,path to git executable就是我們的本地git安裝路徑中bin目錄下的git.exe,路由完路徑後點選test按鈕,如果正確安裝且路徑正確,那麼會彈出如下對話方塊,表示配置成功:

我們經常會將公司git庫或github上的**拉取到本地來開發,我們在idea中如何拉取呢?其實有兩種方式可以達到我們的目標,我們以github為例:

1.先通過git工具將**拉取到本地,然後再通過idea開啟。

複製路徑

轉殖到本地

lq@desktop-bhj6ud2 mingw64 /e/mygit/20180226

(master)

$ git init

reinitialized existing git repository

in e:/mygit/20180226/.git/lq@desktop-bhj6ud2 mingw64 /e/mygit/20180226

(master)

$ git clone

cloning into

'designpattern

'...

remote: counting objects:

73, done.

remote: total

73 (delta 0), reused 0 (delta 0), pack-reused 73

unpacking objects:

100% (73/73), done.

拉取成功,路徑在本地e:/mygit/20180226,在idea中open該路徑下的專案,按步驟操作即可。

2.直接通過idea將**拉取下來,推薦這種,因為方便快捷。

按照上圖方式選擇之後,裡面有多個可選項,我們選擇git,會彈出乙個對話方塊,點選clone按鈕即可。

我們在提交**前最好先更新下遠端倉庫的**到本地倉庫,這樣可以減少不必要的衝突,更新update可以直接通過快捷鍵 ctrl + t ,也可以通過工具欄上按鍵來實現

,分別是update,commit,compare with the same respository version。這裡我們選擇update。

當然也可以右鍵專案-->選擇git-->respository-->pull來實現。

我們在idea中開發好自己的**之後如何提交到遠端倉庫呢?右鍵專案-->選擇git

1.commit directory:commit**(將stage區的暫存檔案提交到當前分支的本地倉庫,並清空stage區),也可以push**(把本地倉庫的檔案同步到遠端倉庫)。

在idea中,我們會看到檔案被標識著不同顏色:紅色,綠色,藍色。它們分別代表什麼意思呢?

紅色:未被版本控制的檔案,即未新增到版本控制的檔案,例如我們新增到ignore中的檔案。

綠色:新加入版本的檔案,即我們新建立的檔案,還未提交到遠端倉庫。

藍色:修改過的檔案,即遠端倉庫中已有該檔案,我們這次對它進行了修改,但是還未提交。

commit對應git的commit命令,有時候我們只希望commit到本地倉庫暫時還不想push則可以通過此方法。如果commit完之後我們還需要push到遠端倉庫,這時候需要我們再右鍵專案-->選擇git-->respository-->push。

想實現單純的commit功能,我們還可以通過快捷鍵 ctrl + k ,亦或通過工具欄按鈕

。commit and push也就是commit和push,我們可以直接在這裡commit到本地倉庫之後,再push到遠端倉庫。

2.add:把本地檔案從工作目錄新增到本地倉庫的stage區,對應git的add命令。

3.compare with branch…:與遠端分支比較。我們提交前可以通過此功能比較下我們工作目錄中**和遠端分支**的異同。

4.show history:檢視歷史修改版本記錄。

5.revert:回滾,會將你的本地修改回滾。

6.repository:各種倉庫命令。

在開發中難免會遇到多人修改同乙個檔案,造成版本衝突,這時候如果需要程式正常執行並且確保功能完整就需要開發人員手動解決這些衝突,並將**合併,得到最終一致性的**最後再push到遠端。

而這一塊往往對很多人來說是最頭疼的,操作不當可能會造成**紊亂造成事故,其實理解了原理,熟練之後其實也沒那麼複雜。

這裡需要介紹的內容蠻多而且需要細說, 如果關心這塊的話可以關注下,後續不定期的更新新增和補充完善。

分支管理我們就需要用到idea底部的狀態列了。

在這裡我們可以切換分支,新建分支,checkout分支**,compare分支**等等。

IntelliJ IDEA下配置的使用git

git是目前流行的分布式版本管理系統。它擁有兩套版本庫,本地庫和遠端庫,在不進行合併和刪除之類的操作時這兩套版本庫互不影響。也因此其近乎所有的操作都是本地執行,所以在斷網的情況下任然可以提交 切換分支。git又使用了sha 1雜湊演算法確保了在檔案傳輸時變得不完整 磁碟損壞導致資料丟失時能立即察覺到...

Unity實時GI與烘焙GI

在unity2019.3.8中,當我們新建乙個場景時,預設的燈光設定為 自帶的主平行光 realtime 燈光面板 baked gi light mode為shadowmask 不是distance shadowmask 新建物體的contribute gi預設是關閉的 該預設設定有乙個不足,即不能...

不刪除GI軟體的前提下重新配置GI

乙個虛擬機器下的集群測試環境,今天被折騰壞了,集群無法啟動,需要重新配置集群,但又不想刪除集群軟體。於是,有了這篇文件。1 清空集群環境 1.1 在集群的所有遠端節點上執行如下命令 grid home crs install rootcrs.pl deconfig force verbose 1.2...