git工作流程(團(tuán)隊)

一旬薯、 前提信息 (入職時從公司獲取):
  1. 獲取賬號和郵箱
    公司郵箱 :http://mail.yjf.tech/sclcoder@yjf.tech/***
    GitLab 個人賬號 : git.yjf.tech:sclcoder/***
二潜秋、 初始設(shè)置 (一次性設(shè)置工作)
  1. 本地個人工作電腦 git 全局性配置
    git config --global user.name "sclcoder"
    git config --global user.email "sclcoder@yjf.tech"

  2. 使用 GIT GUI help 菜單中 Show SSH Key 菜單項對話框按鈕 Generate Key 生成一對公鑰私鑰常潮;
    這一對公鑰私鑰用于git 命令行向gitlab服務(wù)器推送文件時使用耻瑟;
    生成的公鑰私鑰文件保存在工作站當(dāng)前用戶的目錄下 id_rsa 是私鑰兔毒, id_rsa.pub 是公鑰;

  3. 將生成的SSH Key 的公鑰文本添加到gitlab服務(wù)器個人用戶profile中
    GitLab 上個人用戶 profile中 增加一個新的 SSH Key 的路徑是 : http://git.yjf.tech/profile/keys
    GitLab 上每個個人用戶profile 中可以增加多個 SSH Key

三、針對每個參與的項目一次性的初始化工作(以參與的項目為 dev 組下的 aita3 為例):
  1. 登錄 gitlab fork 參與的項目主庫 http://git.yjf.tech/dev/aita3.git 到自己名下 (這里以名字 sclcoder 為例)吧雹,這一步驟會在自己名下生成項目,路徑類似于 http://git.yjf.tech/sclcoder/aita3.git 涂身, 其內(nèi)容復(fù)制自 http://git.yjf.tech/dev/aita3.git

  2. 將個人 fork 代碼庫克隆到個人本地工作電腦git clone http://git.yjf.tech/sclcoder/aita3.git 這一步驟會在本地當(dāng)前目錄創(chuàng)建目錄 aita3雄卷,內(nèi)容是 gitlab服務(wù)器上個人名下 fork庫的克隆(包含所有分支),我們稱之為本地工作庫

  3. 本地工作電腦當(dāng)前目錄切換到本地工作庫蛤售,并添加遠(yuǎn)程項目主庫為 upstream

    cd aita3
    git remote add upstream http://git.yjf.tech/dev/aita3.git
    git remote -v  // 查看遠(yuǎn)程 源庫丁鹉,和 上游庫信息
    
  4. 本地工作電腦切換到工作分支 (如果當(dāng)前默認(rèn)分支已經(jīng)是工作分支,則本步驟不需要,一般情況下當(dāng)前默認(rèn)分支是 master)
    下面假設(shè)當(dāng)前默認(rèn)分支是 master悴能,但目標(biāo)工作分支是 dev揣钦,所以需要將 remotes/origin/dev checkout 出來成為本地分支 dev
    git checkout -b dev remotes/origin/dev ;

四 、項目主庫代碼同步到本地工作庫和遠(yuǎn)程fork庫
  1. 在需要獲取主庫最新代碼時候從遠(yuǎn)程上游主庫獲取主庫最新代碼
    git fetch upstream // 從upstream中獲取最新代碼漠酿,但是不做任何合并動作冯凹,此命令不影響當(dāng)前本地工作分支

  2. 將拉到本地的上游庫最新代碼合并到本地當(dāng)前工作分支

    git merge upstream/dev // 將upstream分支dev合并到本地當(dāng)前分支
    

    // 注意 : 上面命令假設(shè)本地分支為 dev 并且對應(yīng)到 upstream/dev, 如果本地分支為 master 并且對應(yīng) upstream/master, 對應(yīng)命令行應(yīng)該為 git merge upstream/master

  3. 將本地最新的代碼推送到遠(yuǎn)程個人fork庫
    git push

五、 個人 fork庫代碼同步到項目主庫

一旦本地個人工作庫中編輯了一些內(nèi)容炒嘲,經(jīng)過 commit/push 到遠(yuǎn)程個人fork之后谈竿,需要將遠(yuǎn)程個人fork庫代碼同步到項目主庫,其他人才能看到你最新的代碼變化摸吠,這一目的通過在遠(yuǎn)程個人 fork 庫中創(chuàng)建新的 merge request 并經(jīng)過項目主庫審批人審批通過完成空凸;

  1. 遠(yuǎn)程個人fork庫中創(chuàng)建 merge request
    個人fork庫中創(chuàng)建 merge request 的地址類似于 : http://git.yjf.tech/sclcoder/aita3/merge_requests

  2. 將創(chuàng)建好的 merge request 發(fā)送給項目主庫審批人
    要發(fā)送的 merge request 使用其 URL 地址形式 : http://git.yjf.tech/dev/aita3/merge_requests/5

  3. 項目主庫審批人 review 代碼和審批 merge request
    項目主庫中待審批 merge request 列表的地址類似于 : http://git.yjf.tech/dev/aita3/merge_requests
    如果有多個待審批 merge request 的話,審批人在這個地址可以看到各個 merge request寸痢,
    點開某個 merge request (瀏覽器地址欄中URL類似于 : http://git.yjf.tech/dev/aita3/merge_requests/5 ) 呀洲,
    可以看到 ACCEPT MERGE REQUEST 按鈕,也可以進(jìn)行代碼 review

六、 如果遠(yuǎn)程代碼庫增加分支(例如backup分支)道逗,自己遠(yuǎn)程庫已經(jīng)fork對應(yīng)的遠(yuǎn)程庫代碼了兵罢,也就是缺少backup分支,自己本地庫也缺少backup分支滓窍,可以如下操作
  git fetch upstream  (遠(yuǎn)程代碼庫)
  git checkout backup (切換本地backup分支卖词,不存在則創(chuàng)建一個)
  git merge upstream/backup (遠(yuǎn)程upstream合并到本地backup)
  git push origin backup:backup 提交本地backup分支 作為 origin 遠(yuǎn)程的backup分支(git push origin test:master // 提交本地test分支 作為 遠(yuǎn)程的master分支)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市吏夯,隨后出現(xiàn)的幾起案子此蜈,更是在濱河造成了極大的恐慌,老刑警劉巖噪生,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件裆赵,死亡現(xiàn)場離奇詭異,居然都是意外死亡跺嗽,警方通過查閱死者的電腦和手機(jī)战授,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來桨嫁,“玉大人植兰,你說我怎么就攤上這事×О桑” “怎么了楣导?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長肚逸。 經(jīng)常有香客問我,道長彬坏,這世上最難降的妖魔是什么朦促? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮栓始,結(jié)果婚禮上务冕,老公的妹妹穿的比我還像新娘。我一直安慰自己幻赚,他們只是感情好禀忆,可當(dāng)我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著落恼,像睡著了一般箩退。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上佳谦,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天戴涝,我揣著相機(jī)與錄音,去河邊找鬼。 笑死啥刻,一個胖子當(dāng)著我的面吹牛奸鸯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播可帽,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼娄涩,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了映跟?” 一聲冷哼從身側(cè)響起蓄拣,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎申窘,沒想到半個月后弯蚜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡剃法,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年碎捺,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贷洲。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡收厨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出优构,到底是詐尸還是另有隱情诵叁,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布钦椭,位于F島的核電站拧额,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏彪腔。R本人自食惡果不足惜侥锦,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望德挣。 院中可真熱鬧恭垦,春花似錦、人聲如沸格嗅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽屯掖。三九已至玄柏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間贴铜,已是汗流浹背禁荸。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工右蒲, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人赶熟。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓瑰妄,卻偏偏與公主長得像,于是被迫代替她去往敵國和親映砖。 傳聞我的和親對象是個殘疾皇子间坐,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,644評論 9 163
  • 聲明:這篇文章來源于廖雪峰老師的官方網(wǎng)站,我僅僅是作為學(xué)習(xí)之用 Git簡介 Git是什么邑退? Git是目前世界上最先...
    橫渡閱讀 3,946評論 3 27
  • 流水和下雨是不一樣的 我們愛流水 是因為可以由自己決定選取 我們討厭下雨 是因為無法選擇并會打擾自己 雖然都需要 ...
    一度一閱讀 156評論 0 0
  • 我覺得考公務(wù)員沒用我覺得我大學(xué)學(xué)的東西沒用我覺得我的專業(yè)沒用 10月11日蛻變之旅---什么才是有用 首先我想問一...
    楠ancy閱讀 452評論 0 1
  • 第2次作業(yè)完成的時間稍微慢了些竹宋,現(xiàn)在才交。前面幾天有點事地技,就沒有時間了蜈七,這幾天才慢慢完成。在畫的過程中莫矗,毛...
    藍(lán)粉筆頭閱讀 433評論 4 1