1. 程式人生 > >碼雲上傳(單人與多人開發的不同)

碼雲上傳(單人與多人開發的不同)

先來一個不規範的上傳碼雲,一般用於單人開發。

git pull 從服務端抓取

git add *        新增全部

git commit -m “xxx”   提交  xxx為提示資訊

git push -u origin master (或git push)

詳細:

1.      git pull

2.      git status –s  檢視下抓取了那些與服務的不同的

這裡前面紅色修飾符 M,D,??為你變動的檔案,M為被修改的,D為你刪除的,??為新建的。

3.git add *或有選擇的上傳。

這裡我

git add index.android.js,

git add src/layout/order/OrderDetail_NOpayment.js

git add src/layout/order/OrderList.js

git add src/layout/order/component/OrderDetail_Item.js

git status –s於是可以看見其字首變為綠色的,表明可以提交

4.          git commit -m “xxx”(與git add * 連用)提交所用

或git commit  src/layout/order/component/OrderDetail_Item.js 提交一個

如果你是用這個命令,那麼恭喜你,選擇了麻煩的了,你要進入其文件裡,然後到最後一行寫提示語然後 :wq 儲存退出。

5.      git push

接下來看下規範的多人開發時,如何上傳

1.  git pull

 

一般會報

看 error 說你本地改變的會被覆蓋。用這個例子說:我本地的檔案index.android.js、src/util/Global.js、src/util/NetUtil.js這三個檔案與服務端的衝突了。為啥會衝突?

因為這是多人開發,所以不僅僅是你在更新,那如果你上傳以前,別人把三個檔案改動了,此時你要怎麼辦?所以我們接下來,就是解決這事。

2.git stash 這是讓你把衝突的(本地改動的)暫存。()

3.      git pull

4.      git stash pop 這是把你在2中暫存的與git pull相融。

5.      此時你要到index.android.js、src/util/Global.js、src/util/NetUtil.js這三個檔案里根據它給你做的提示選擇,衝突部分,要用你自己還是服務端的。

6.      git add *

7.      git commit –m “” (注意 -m是全部上傳)

8.      git push

但是還有一種情況,就是你想更新與衝突檔案無關的或只想提交沒有衝突的檔案,衝突檔案不提交。於是我們要去除衝突檔案。

1.      git  pull(發現上述情況)

2.      git stash

3.      git pull

4.      git stash pop

5.      git add –u

6.      git commit ‘test ’

7.      git pull

到達這你已經更新完了,下面提交沒有衝突的檔案與前面提交一樣的步驟。。。

但是我們經常提交後,我們發現git add 加檔名,這樣是不是很麻煩,於是乎,我們可以這麼做:(假如你不想提交tempData.js檔案)

1.      git add *(tempData.js也被我們加入了)

2.      git status 檢視檔案狀態

3.      git reset  --  檔案路徑/檔名

4.      git status 檢視檔案狀態

5.      git commit –m  ‘ ’

6.      git push

好了上面上傳問題解決了,那麼更新遠端伺服器了,其實也是一種上傳。。。。

案例:伺服器端有一個檔名為projectChoose.js  但是我們要將檔名改為ProjectChoose.js,首字母大寫。

1.      將本地檔名修改為想改的

2.      git pull

3.      git status 發現沒有檢查到檔名改變了,

4.      於是我們的解決方法:先刪除遠端檔案,然後再提交本地檔案

5.      git rm –r –-cached 檔案路徑/檔名     刪除暫存和遠端分支上的檔案

6.      git commit –m  ‘’

7.      git push

8.      git pull

9.      git status

10.  執行上傳步驟