1. 程式人生 > 其它 >【Git】Gie基礎操作學習筆記01

【Git】Gie基礎操作學習筆記01

獲取專案資訊

remote可以看做是一個人的電腦,假設有十個人合作,那麼就有10個remote物件。為了方便大家同步,我們建立一個叫做origin的remote,大家都和這個origin同步,那麼大家就可以達成一致了

git remote # 檢視有哪些remote,一般就一個,叫做origin
git remote add [name] [git-link] 
git remote remove [name] # 刪除

git clone [git-link]相當於一個複合命令:下載檔案後自動執行了git remote add [orgin] [git-link]

擴充套件:新增遠端同步

git remote add another [name]

所以不需要克隆下來的時候,可以:

git remote add origin [git連結]

分支管理

查詢本地分支

git checkout [分支名]

查詢遠端分支

git branch -a

建立分支

git branch [name]

切換分支

git checkout [分支名字]

想建立一個新的分支同時切換到新建立的分支

 git checkout -b <your-branch-name>

合併分支1

git merge master

如果遇到

fatal: refusing to merge unrelated histories

可以強制合併

git merge master --allow-unrelated-histories

合併分支2 (線性合併)

git rebase

Rebase 實際上就是取出一系列的提交記錄,“複製”它們,然後在另外一個地方逐個的放下去。

Rebase 的優勢就是可以創造更線性的提交歷史

撤銷變更

git reset改寫歷史

對遠端分支無效

git reset HEAD~<num>

git revert

針對遠端分支

git revert HEAD

強制提交

針對問題:

error: failed to push some refs to ['https://gitee.com/mllt992/xxx.git']

解決方式:強制提交

git push -u origin [分支名] -f

該方法會使遠端修改丟失,一般是不可取的,尤其是多人協作開發的時候.

因此如果遠端資料需要的話,請先git pull origin master,再進行git push -u origin master

擴充套件

將一些提交複製到當前所在的位置(HEAD)下面

git cherry-pick [name] [name] ……

按指定順序複製

git rebase -i HEAD~<>