git使用規範

http://www.myexception.cn/software/1891171.html

Git安裝配置及基本使用

  1. 從官網下載安裝包,手動完成安裝。
  2. 打開Git Bash命令行工具,執行命令ssh-keygen -t rsa -C Email-Addresss生成一個密鑰對。
  3. 登陸到GitLab,點擊右上角你的用戶頭像,點擊Edit Profile settings,點擊SSH Keys,點擊Add SSH Key,填寫Title欄,複製用戶目錄下.ssh/id_rsa.pub文件的內容到Key,點擊Add Key
  4. 點擊右上角的New project,填寫完成後點擊Create project新建一個倉庫,點擊Activity,點擊SSH後複製SSH邊上欄裏的地址。
  5. 打開Git Bash命令行工具,切換到一個合適的目錄,使用命令git clone 剛纔複製的URL克隆建立的倉庫。
  6. 進入目錄cd 倉庫名,執行命令git config --global user.email your-email, 
    git config --global user.name your-name,設置你的我的信息。
  7. 執行命令: 
    echo "#Description" > README.md,添加一個文件 
    git status,查看當前狀態,發現有未跟蹤文件 
    git add .,當前目錄全部文件添加到暫存區 
    git diff,比較當前工做區和暫存區有何不一樣 
    git status,查看當前狀態,發現有文件未提交 
    git commit -m "註釋",把暫存區內容提交到本地倉庫 
    git push -u origin master,把本地倉庫的提交推送到遠程倉庫 
    git log,查看提交日誌

Git本地分支管理

  1. 分支的建立、合併、刪除 
    git branch,顯示全部分支 
    git branch b1,從當前分支建立一個叫b1的分支 
    git checkout b1,切換到b1分支 
    git checkout -b b1,至關於以上兩條命令的組合 
    git checkout master,切換到master主分支 
    git merge b1,把b1分支的代碼合併到master上 
    git branch -d b1,刪除b1分支,不能在被刪除分支上執行

Git Tag標籤管理

  1. 標籤的建立、刪除 
    git tag t1,從當前分支建立一個名爲t1的標籤 
    git tag -d t1,刪除名爲t1的標籤

GitLib權限管理

GitLib有五種身份權限,分別是:html

  • Owner 項目全部者,擁有全部的操做權限
  • Master 項目的管理者,除更改、刪除項目元信息外其它操做都可
  • Developer 項目的開發人員,作一些開發工做,對受保護內容無權限
  • Reporter 項目的報告者,只有項目的讀權限,能夠建立代碼片段
  • Guest 項目的遊客,只能提交問題和評論內容

具體參見GitLab權限,爲項目添加成員時可指定成員的身份權限。git


命名規則

  • 每次提交必須寫明註釋,若是是修復Bug,請加上Bug號
  • 建立特性分支,名稱要以f-開頭,加上特性名
  • 建立發佈分支,名稱要以r-開頭,加上預發佈版本號
  • 建立Bug修復分支,名稱要以b-開頭,加上Bug號
  • 建立標籤,名稱要以t-開頭,加上發佈版本號
  • 合併分支時必須使用--no-ff參數,以保留合併歷史軌跡

分支模型

總體流程圖: 
branch-model-wholessh


主要分支(保護分支)

  • master 主分支,穩定代碼,爲生產環境作準備的
  • develop 開發分支,爲開發服務 
    分支關係相似下圖: 
    main-branch

輔助分支


特性分支

從develop分支建立,用於特性開發,完成後要合併回develop分支。 
操做過程: 
git checkout -b newfeature develop,從develop分支建立newfeature特性分支 
git checkout develop,開發完成後,須要合併回develop分支,先切換到develop分支 
git merge --no-ff newfeature,合併回develop分支,必須加--no-ff參數 
git branch -d newfeature,刪除特性分支 
git push origin develop,把合併後的develop分支推送到遠程倉庫 
分支關係相似下圖: 
feature-branchsvn


發佈分支

從develop分支建立,用於預發佈版本,容許小bug修復,完成後要合併回develop和master。 
操做過程: 
git checkou -b release-1.2 develop,建立一個發佈分支 
git checkout master,切換到master分支,準備合併 
git merge --no-ff release-1.2,把release-1.2分支合併到master分支 
git tag 1.2,從master分支打一個標籤 
git checkou develop,切換到develop分支,準備合併 
git merge --no-ff release-1.2,把release-1.2分支合併到develop分支 
git branch -d release-1.2,刪除這個發佈分支工具


修復分支

從master分支建立,用於生產環境上的Bug修復,完成後要合併回develop和master。 
操做過程: 
git checkout -b hotfix-1.2.1 master,從master分支建立一個Bug修復分支 
git checkout master,切換到master分支,準備合併 
git merge --no-ff hotfix-1.2.1,合併到master分支 
git tag 1.2.1,爲master分支建立一個標籤 
git checkout develop,切換到develop分支,準備合併 
git merge --no-ff hotfix-1.2.1,合併到develop分支 
git branch -d hotfix-1.2.1,刪除hotfix-1.2.1分支 
分支關係相似下圖: 
feature-branch命令行


Git協同模型


SVN式集中協同模型

適用於小型項目,參與人員較少的項目,每一個開發者都可向倉庫推送代碼 
svn-like3d

相關文章
相關標籤/搜索