git分支

GumpYan發表於2021-04-26

git分支是什麼

為什麼用git分支

假設超哥要開發一個同性線上交友的網站,這個寫程式碼的工作進行分配,分給兩個小弟進行功能開發,一個是武沛奇分支,一個是苑昊分支,他倆自己的分支別人看不到,當他倆程式碼寫完後,合併到master主分支上,這樣既保證主程式碼的安全,又能協同開發,互不影響。

git分支實戰

git branch 分支名linux     建立分支linux
git checkout 分支名linux    切換分支到linux
git branch    檢視當前分支情況,在哪一個就有*符
git check -- filename 一鍵還原檔案,將git倉庫的檔案覆蓋當前檔案,危險命令
git checkout -b name  建立+切換新的分支
練習 建立linux分支,提交程式碼 git branch linux git checkout linux touch first.py git add first.py git commit
-m “fenzhi linux commit v1” 此時切換回master分支,發現沒有first.py檔案 自動合併分支到master git checkout master git branch git merge linux 合併linux分支到master分支 合併完最好刪掉無用的分支 git branch -d linux 自動合併可能會出現衝突報錯,需手動解決衝突,解決自己想要的內容 對同名同目錄的同一個檔案操作,修改同一行資料就會衝突 git checkout master echo “master” >> readme git commit -a -m “master commit “ 提交程式碼到master倉庫 切換到linux分支,此時已經看不到master主幹的程式碼修改 git checkout linux echo “linux” >> readme git commit -a -m "linux commit” git checkout master 此時檢視檔案內容,應該只有master,並沒有linux git merge linux 合併linux分支的程式碼,發現有一行衝突(both modified),
master與linux字串,手動修改後重新提交
git commit
-a -m "master merge commit” 提交原生程式碼到程式碼倉庫
當Git無法自動合併分支時,就必須首先解決衝突。解決衝突後,再提交,合併完成。

解決衝突就是把Git合併失敗的檔案手動編輯為我們希望的內容,再提交。

用git log --graph命令可以看到分支合併圖。