git 遠端分支操作

2021-10-02 07:39:01 字數 1817 閱讀 4340

文件  學習筆記,並以gitee.com為例實踐。

在gitee.com上建立乙個新倉庫a,勾選建立readme檔案。

那麼 倉庫a 建立之後缺省會有乙個名為master的分支。

在本地執行 git clone 之後,本地的分支情況如下:

建立乙個名為origin的本地倉庫,拉取遠端倉庫a的所有資料及提交。

分別建立乙個名為orign/master 和另乙個名為 master 的分支,和遠端倉庫a的master分支指向同乙個提交。

當前所在分支為master分支,嘗試在本地建立乙個新提交。這樣本地的master比遠端倉庫的master分支多了乙個提交。

將本地master的提交推到遠端master分支的操作:

根據以上描述,git push origin master 實際上等價於 git push origin  master:master

假如在本地建立了乙個 a_branch分支(遠端沒有),那麼使用 git push origin a_branch  這個命令,那麼遠端倉庫會建立乙個新分支,同樣的本地也會建立 origin/a_branch  分支。

現在假如兩個人協同作業,兩個都clone了遠端倉庫,並在master分支上進行開發。

usera 做了乙個提交,git push origin master 成功。

假設userb  這個時候不知道 usera做了提交,userb 也做了乙個新提交,當userb執行 git push origin master的時候,會出錯:

截圖中的 hint 簡單翻譯如下:更新被拒絕了,這是因為遠端倉庫裡有你本地沒有的work。這通常是由其它倉庫push到了相同的ref。你 may want to integrate遠端的改變,然後再嘗試做 push。

然後錯誤資訊裡有 fetch first 和 git pull。

執行 git fetch 之後,用gitg工具,可以看到本地的master分支和 origin/master 已經指向不同的提交。

origin/master指向的是usera最後的提交。而master是userb 最後的在本地提交。

再來嘗試一下 git pull

git pull 之後會提交你生成乙個meger的提交:

git pull 之後的結果是:

不產生 mege提交,具體可以了解 

git操作遠端分支 協同開發

新增遠端倉庫 git remote add joe git git.com joe.le frontend.git 修改遠端倉庫位址 git remote set url joe git git.com joe.le frontend.git 刪除遠端倉庫 git remove joe 重新命名遠端...

git 遠端分支

git clone缺省會把遠端倉庫整個給clone下來 但只會在本地預設建立乙個master分支 如果遠端還有其他的分支,此時用git branch a檢視所有分支 master remotes origin head origin master remotes origin master remo...

Git遠端分支

談談自己對git的分支的理解 git和其他的一些csv工具 svn 不同,它在本地有乙個和伺服器有相同結構的git專案內容存在database中,這樣的好處就是所有東西都是在本地的,不需要聯網也能完成一些事情,最後只要push到伺服器就可以了。剛開始的本地電腦上什麼git專案也沒有,我有兩種方式建立...