分支管理
1. Git branch
-- 查詢(xún)本地所有分支和當(dāng)前所在分支
2. Git branch 要新創(chuàng)建的分支的名字
-- 創(chuàng)建新的分支
3. Git branch -b 要新創(chuàng)建的分支的名字
-- 創(chuàng)建新的分支且切換到新的分支
4. Git checkout 要切換的分支名字
-- 切換分支
本地分支test2 merge 代碼到master分支
以下是在本地test2分支修改部分代碼,然后merge到master環(huán)境的整個(gè)過(guò)程免都。
1. Git status
-- 查看本地的change
2. Git stash save 存儲(chǔ)的stash名字
or Git stash
-- 將本地的修改先存儲(chǔ)起來(lái)胡桨,起名字方便查詢(xún)
3. Git rebase master
-- 從master獲取最新代碼到本地test2分支
4. Git stash pop
or Git stash pop stash@{1}
-- 將存儲(chǔ)起來(lái)的修改記錄恢復(fù), 前者默認(rèn)恢復(fù)存儲(chǔ)列表中第一個(gè)叶雹,后者可以選擇恢復(fù)列表中的第幾個(gè),恢復(fù)之前可以使用 Git stash list
查看存儲(chǔ)列表
5. Git add 文件名
-- 添加修改的文件到暫存區(qū)得运,添加完成后可查詢(xún)狀態(tài)
6. Git commit -m 'comments message'
-- 將暫存區(qū)里的改動(dòng)提交到本地倉(cāng)庫(kù)
7. Git push origin test2
-- 將本地倉(cāng)庫(kù)的代碼push到test2分支的遠(yuǎn)程倉(cāng)庫(kù) (可以在GitHub上檢查吓妆,第六步的commit只是在Test2分支)
8. Git checkout master
-- 重新切換到master分支
9. Git merge test2
-- 將Test2分支上的代碼merge到master分支,可以通過(guò) Git log
查看當(dāng)前Commit的情況误阻。如下圖,說(shuō)明Test2 分支有部分代碼是沒(méi)有push到mater分支晴埂。
10. git push origin master
-- 將本地版本庫(kù)的代碼push到master分支的運(yùn)程倉(cāng)庫(kù)究反, 然后重新查看log。 如下圖儒洛,現(xiàn)在所有的分支都有相同的代碼精耐。
11. Git push origin --delete test2
-- 刪除GitHub上的test2分支,可以在GitHub查看
12. Git branch -D test2
-- 刪除本地的test2分支
如何撤銷(xiāo)
1. Git checkout 撤銷(xiāo)的文件名
-- 撤銷(xiāo)本地的修改琅锻。
2. Git reset
-- 撤銷(xiāo)提交到暫存區(qū)的修改
如果已經(jīng)通過(guò)Git add 修改的文件名
把修改的文件提交到暫存區(qū)卦停,然后需要撤銷(xiāo)暫存區(qū)的修改向胡。
3.撤銷(xiāo)本地倉(cāng)庫(kù)的修改
3.1 Git reset --soft 需要撤回的版本commitID
-- 撤銷(xiāo)本地倉(cāng)庫(kù)修改, 但是會(huì)保留暫存區(qū)和本地工作區(qū)的修改
3.2
Git reset --hard 需要撤回的版本commitID
-- 撤銷(xiāo)本地倉(cāng)庫(kù)修改惊完, 撤銷(xiāo)暫存區(qū)和工作區(qū)的修改 ()