git倉庫使用問題

git倉庫創建之后,一般都會創建兩個分支開發分支dev和主干分支master。其中遠端倉庫一般checkout于master分支。master分支是穩定分支,用于發布版本,添加標簽等。dev分支不是穩定分支,與最新工作進度保持一致,協同工作都是用此分支。

由于遠端倉庫的當前分支是不能接收代碼提交的,故遠端倉庫通常都處于master分支。master的代碼提交需求極少(除了部分前期版本bug修復時可能需要直接提交到master分支)。故 git clone到本地的倉庫是對應于遠端的mater分支。

查詢當前分支關聯到哪個遠程分支:
git config -l | grep 'branch\.master'

開發工作需要在本地的dev分支進行,且此分支必須與遠端dev分支關聯。進行如下操作:

$git clone git_rul  //克隆遠端倉庫
$git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/develop_branch
  remotes/origin/master
$git checkout -b dev origin/dev  //在本地建立與遠端開發分支對應的分支,最好保持分支名一致
$git branch --set-upstream-to origin/dev //建立本地分支與遠程分支的關聯
$git config push.default upstream //設置推送設置為upstream 表示默認push到關聯遠程分支。

通過如上設置后,在dev分支push 和pull直接操作遠程dev分支。

git config push.default幾個參數的含義:

  • current 直接提交本地分支到遠端倉庫
  • matching 提交到與本地此分支同名的遠端分支
  • simple 只能提交到pull到當前分支的遠端分支
  • upstream 提交到此分支所關聯的遠端分支

git checkout -b 與git checkout的差異

  • git checkout -b 表示基于當前分支創建一個分支,然后切換到該分支
  • git checkout (遠程分支名) 表示直接創建一個與遠程分支同名的本地分支,且此分支與當前分支沒有關系。
    故添加 -b 參數的分支創建的分支與當前分支一致,必須手動關聯遠程分支,如此就可能出現遠程分支與當前分支存在差異,需要進行合并。而不加 -b 參數則沒有此問題。

git版本管理思路

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 三大區域: 工作區 → 緩存區 → 本地倉庫 一 、 使用 git config 命令進行配置: git ...
    Manchangdx閱讀 2,860評論 0 2
  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git,從https:/...
    落魂灬閱讀 12,699評論 4 54
  • 米微鄭重承諾:使用一年的濾芯,出風口PM2.5仍舊為0!歡迎PK
    醫療級新風空氣凈化閱讀 84評論 0 0
  • 早上出門晨練,看到一老婦人也剛好拄著拐杖走出小區門口,胸口別一張打印的紙條“司機,請不要讓我上車”,一看就知道是她...
    南寧唐方閱讀 233評論 4 12
  • 經常我會問自己,活著的目標和意義是啥?這是個幾乎每個人都曾思索過的問題。我生怕自己活得平庸,生怕這一輩子不夠精彩,...
    輕荷閱讀 175評論 0 1