我瞭解的git

前言:

若是你對git flow,規範化操做很瞭解,煩請直接到文章底部看 '騷操做'
複製代碼

1、 gitlab 建立項目

如圖操做 圖一:
git

圖二: vim

2、 建立 new issue

圖3: bash

圖4:服務器

3、 而後在開發分支上操做,推到gitlab服務器上;

4、 而後按鍵盤上的G N 兩個鍵,看到graph長這樣

看到test分支從master上長出來了😁……函數

ok,如今定義一下:

test:   測試分支          // 全部開發的分支都合併到 test  上
master: 生產環境上分支    // 管理員纔有權限去操做
複製代碼

1. submit issue;

2. 開發完第一個任務

3. 合併分支到 test 兩種方式

  1. 去gitlab GUI上發 merge request,將 source branch ====merge===>>> target branch

圖 5: gitlab

圖 6:
圖 7:
這種merge graph長這樣
圖 8:

  1. 直接經過命令去 merge

git log --graph 命令和GUI 對比

ok,這時候,咱們開發完了,測試完成,發MR,將 test 合併到 master,不勾選刪除當前分支測試

將多個commit點修改一下,好比合併成一個點

git rebase -i HEAD~<num>  num表明要合併的commit點數
複製代碼

常見命令

1. git stash && git stash pop
複製代碼

2. git branch -D <branch-name>  刪除本地分支
   git branch -a      查看全部分支
   git branch -r -d <remote branch-name>   刪除 remote branch
   git branch -m <new branch name>  對當前分支進行rename
複製代碼

3.git branch的參數
複製代碼

爲何要rebase ???

看到了上述,上述小夥伴看到了我每次操做都有rebase,爲何要rebase呢?強迫症啊啊啊啊啊!!!fetch

圖來自文章 rebase的操做ui

來一點騷操做,配置一下alias

Mac系統安裝了iterm2
spa

若是安裝了zsh主題,就修改 vim ~/.zshrc;
沒安裝,就vim ~/.bashrc;
複製代碼

廢話很少,直接上配置,粘貼就能用;

# alias setting

alias g='git'
alias ga='git add -all'
alias gfp='git fetch -p'
alias gp='git pull'
alias gcn='git commit --amend --no-edit'
alias gb='git branch'
alias gba='git branch -a'
alias gcb='git checkout -b '$*''


ganp(){
   git add . && git commit --amend --no-edit &&  git fetch -p && git rebase origin/'$*' && git push origin HEAD  -f
}
alias ganp=ganp

gacp(){
    git add --all && git commit -m "$*" && git fetch -p && git rebase origin/'$*' && git push origin HEAD -f;
}
alias gacp=gacp;
複製代碼

上面配置了兩個函數ganp和gacp,這樣每次提交代碼,一行便可搞定

gacp   用於第一次提交,附帶一個commit message
ganp   用於當前分支已經提交過commit message
複製代碼

你品,你細細品,是否是爽歪歪~

相關文章
相關標籤/搜索