iOS開發:Git流程

來源:互聯網
上載者:User

iOS開發:Git流程

 

  iOS開發中的Git流程

  Git的優點相信已不用我贅述,不是SVN之流能夠相提並論的。

  以前多人開發的時候我還用過拖檔案大發和別人合作的。- -!

  我在這裡不多說一些基本命令,只教最實用的,多人開發到底怎麼用Git。

  情境

  三人合作開發一個app,老大叫小明,老二叫小強,老三叫小偉。

  這時候老大去github開一個repository, 當然,公司項目一般是private repo。

  建立好之後呢。老大在這個repo分別開四個分支。

  名字叫

  xiaoming_gittutorial,xiaoqiang_gittutorial,xiaowei_gittutorial,

  還有一個develop分支。

  現在是這樣的。

  ok,現在老大告訴其他兩個人,把項目從github上clone下來。

  ok,拉下來之後呢,輸入git branch,看看本地分支有哪些。

  本地只有一個master,分支。現在,讓每個人分別從遠程分支拉兩個分支。一個是develop,一個是代表自己的那個分支,例如小明,就拉xiaoming_gittutorial.

  輸入git fetch origin develop:develop

  這個命令的意思就是拉取遠端一個叫develop的分支,並在本地建立一個叫develop的分支和遠端分支匹配。

  全部拉完之後我們再看看本地有哪些分支了。

  我們做完了前期準備工作,接下來怎麼保證多人協作的時候盡量少出現merge conflict和汙染主分支

  做到以下幾點,其實就不容易出現大的紕漏。

  做好分工,特別是storyboard和xib多種,盡量避免出現多人修改同一個檔案。

  每個人的所有開發工作都只在自己的分支開發。例如小明開發,你就在本地切換到自己的xiaoming_gittutorial分支然後進行開發。

  每個人只允許在自己的分支直接push遠程分支。

  合并的時候必須遵循以下條件.

  十分重要

  首先,本地切換到develop分支。

  git pull

  例如你是小明,那麼在pull到遠端develop最新的內容之後,git merge xiaoming_gittutorial.

  如果出現conflict那麼清除conflict之後,commit.然後把本地develop push 到遠端develop.

  每完成一個功能就提交一次。不要累計代碼。

  這樣的流程有什麼好處呢?

  幾乎不會出現conflict。

  你永遠也不會汙染develop分支。

  為什麼?因為你每次都是在本地merge完清除了conflict之後再push會遠端,那麼別人更新本地develop分支,再合并的時候,就算出現conflict也只會是自己最新代碼產生的conflict。

  最後我們再理清一下思路。

  1.正式開發的時候每個人本地只需要有兩個分支。一個叫develop,一個是自己的那個分支。

  2.每個人可以直接push自己的分支。但是push develop分支的時候。必須先pull 最新的遠程develop分支。然後和本地分支合并,清除conflict之後再push。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.