下載安裝過程忽略
1:IDEA配置好Git並在Terminal窗口能夠運行Git命令
:
2:確保Terminal窗口能夠運行Git命令
3:常用命令總結
- 新建本地分支:git checkout -b test
- 將新建的分支讓Git倉庫管理:git push origin test
- 查看當前分支狀態:git branch -a(查看所有分支,當前分支會顯示*)
- git branch -r(查看遠程分支)
- git branch (查看本地分支)
- 查看改變的文件:git diff
- 更新遠程最新代碼:git fetch --all
- 合併兩個分支,並解決衝突問題
- 1:切換到需要合併的分支:git checkout master(假設現在需要把test代碼合併到master分支)
- 2:提交代碼到遠程,不然有衝突容易丟失當前本地代碼:git commit -m "註釋"
- 3:git merge origin/test
- 製造一個衝突,爲了演示解決衝突的情況:就是遠程一個文件被你修改過,也被你的同事修改過
- 解決衝突
- 先提交文件:git add .
- git commit -m "註釋"
- git pull origin master
- git push origin master
- 如果切換分支過程中出現error
解決方法:
- git stash:備份當前的工作區的內容,從最近的一次提交中讀取內容,讓工作區和上次提交的內容一致,同時將工作區中的內容保存到Git棧中
- git pull:拉取服務器上的代碼
- git stash pop:從棧中讀取最近一次保存的內容,恢復工作區的相關內容,由於可能會存在多個stash的內容,所以用棧來管理,pop會從最近的一個stash中讀取內容並恢復
***切記不可使用git reset --hard回到最開始的提交,可能會丟失代碼,若果操作了,嘗試以下操作(我也沒做過)
1 、git log //查看commit id
2、git reset --hard commit_id //回到commit1版本
3、git push origin a
4、git reflog // 查看操作歷史記錄id,找到commit2對應的id(必須在a分支上回退,因爲是a分支上開發的,纔可以看到commit2的記錄;如果當前在commit1,就新建分支b,則b的代碼只同步到a的commit1,git log時看不到commit2的歷史記錄,並不能回退到commit2)
5、git reset id // 回退到commit2
5、git checkout -b b // 新建分支b
當前分支:b:
6:git pull origin a // 拉取a分支的代碼,防止衝突
7、git push origin b // push commit2 新功能到遠程分支