假設我們當前專案下有兩個分支,分別名為 master 和 dev
根據 gitee 的專案成員許可權說明,我們將 master 分支設定為保護分支,將 dev 分支設定為常規分支。如圖所示。
然後建立我們的使用者及相應 ssh key
假設現在有兩個使用者分別是 [email protected] 和 [email protected] ,當然了,這兩都是我的常用郵箱,你自己可以去實驗就行。
生成 [email protected] 使用者的 ssh key 和 [email protected] 的ssh key。
然後將 [email protected] ssh key 佈署到 [email protected] 賬號下或者說是管理員賬號下的ssh公鑰,
讓 [email protected] 來管理 master 分支(管理員)。
同樣,將 [email protected] ssh key 佈署到 [email protected] 賬號下的ssh公鑰,
讓 [email protected] 來操作 dev 分支(開發者)。
兩個 ssh key 都佈署完畢,我們來測試。
然後,到我們的專案成員管理中,將 [email protected] 設定為管理員(如果是建立者就是管理員,當然也有可能是在企業賬號下開發專案等情況), 將 [email protected] 設定為開發者。
這裡著重測試 [email protected] 這個使用者,檢視他對於 master 分支和 dev 分支所能採取的操作,又或者說是確認保護分支是否生效。
複製專案位址
[email protected] 使用者來拉取專案。
git clone [email protected]:yourrepo/yourreponame.git
預設拉取的是 master 分支
當然你也可以直接拉取對應分支,並跟蹤遠端 dev 分支
git checkout -b dev origin/dev
git branch
應該可以看到 master 分支和 dev 分支
[email protected] 使用者這裡同理。
我們在 [email protected] 客戶端上對專案進行簡單的修改操作,來測試提交。
可以看到不能提交修改到 master 保護分支。
切換 [email protected] 使用者為 dev 分支,提交修改。
成功提交修改到 dev 分支。
這樣我們就利用保護分支實現了對我們**整體的可控性,避免發生不必要的意外情況。當然還是要開發人員平時多加注意。
這裡由於我之前對這個認識有誤,一度認為是將所有的ssh key 都佈署到專案所屬使用者下,才導致保護分支不起作用,都佈署到這個使用者下,那所有的人員不都是管理員了麼,再設定分支級別已經不會有效果,這裡要注意,要把對應使用者的公鑰設定在他的賬戶下面不是統一設定到專案 ssh公鑰下,這裡記錄下來,免得再犯糊塗。
感謝扣扣使用者 [email protected] 的耐心解釋,
技術路上,你我相伴,少一些浮躁,多一些耐心,共同進步。
git保護 git分支建立
因為機緣巧合,我接手了乙個專案,陰差陽錯的,我竟然又成了這個專案的半個負責人。而這個專案呢,由我們團隊和別的團隊一起合作,這就遇到乙個問題了,我們的核心技術在上傳到專案中的時候就會暴露給別的團隊了,那麼,如何解決這個問題呢?我請教了一下師兄,師兄就給我指了一條明路,給git建立分支。閒話不多說,直接...
gitee 分支 命令大全
在安裝好gitee之後。我們會有新的一些業務需求。場景 l在公司中再使用gitee上傳自己的 一天上傳一次 那其他人的 怎麼辦 豈不是亂套了。那全部寫完之後再上傳,可是專案進度又要每天核實。這個時候就體會到了分支的作用 分支管理建立 簡易的命令列入門教程 git 全域性設定 git config g...
gitee 分支 命令大全
在安裝好 gitee 之後。我們會有新的一些業務需求。場景 l在公司中再使用 gitee 上傳自己的 一天上傳一次 那其他人的 怎麼辦 豈不是亂套了。那全部寫完之後再上傳,可是專案進度又要每天核實。這個時候就體會到了分支的作用 簡易的命令列入門教程 git 全域性設定 git config glob...