a1.代碼更新。
在SVN中操作,我們要提交已經修改過的代碼前,一定會記住。
"先更新,在提交" (不然你的小伙伴的代碼就被你全覆蓋了,然后你的小伙伴就會躲在公司牆角畫圈圈了)
所以在Git里面操作。也是這樣的。不過就多了一個步驟,就是 先更新 "遠程服務器 --> 本地服務器",再進行 更新 " 本地服務器 --> 本地代碼"。
我們還是上圖吧。
Eclipse的操作就是:
1.指向代表的意思是只更新 "遠程服務器 --> 本地服務器" 簡稱(Fetch)
當你更新后,你當前更新的項目與Git Repositories都會有類似一個向下的箭頭,這代表“遠程服務器”有東西更新到你的“本地服務器 ”,具體數量就是箭頭隔壁的數字
2.指向代表的意思是 "遠程服務器 --> 本地服務器" 與 " 本地服務器 --> 本地代碼" 都執行 簡稱(Pull)
(當然有先后順序的,先 "遠程服務器 --> 本地服務器" 后 " 本地服務器 --> 本地代碼")
這個操作其實是面向懶人把Git當成SVN使用,一步更新,官方也是不推薦這樣做,因為這樣,你本地代碼,可能一下子代碼沖突很多,給開發人員帶來很多不便。
所以還是老實點,一步步來更新吧。
a2.說完更新,接着說提交代碼。
其實經過剛才的更新講解后,小伙伴們都知道"遠程服務器 --> 本地服務器" 與 " 本地服務器 --> 本地代碼" 的關系了,
所以提交代碼實質上都要走這樣的操作 " 本地代碼 --> 本地服務器" "本地服務器 --> 遠程服務器"
還是上圖吧!
其實小伙伴就記住兩個詞就好了。
Commit : " 本地代碼 --> 本地服務器"
Push : "本地服務器 --> 遠程服務器"
Eclipse的操作就是:
1.從上面的圖中看到,在Git的作出修改,會有一個箭頭指向。
然后你右鍵項目又好,右鍵箭頭文件也好。都是執行commit操作。
去到commit界面
Git 的Commit有種強迫症,一定要你打注釋,不然不給你提交。
當你敲入 Commit Message后,Commit 與 Commit and Push 就會可點擊了
Commit只是提交到 "本地服務器"
Commit and Push 就兩步都會做( " 本地代碼 --> 本地服務器" "本地服務器 --> 遠程服務器" 有先后順序,我下次不說了)
后面我就不寫了。因為后面的都是敲賬號和密碼,如果你第一次 Push 代碼 的話,才需要敲。
通常 Push 不了,無非就兩個問題。
第一。你代碼沖突還沒有解決,一會 “代碼沖突” 說具體講解
第二。就是可惡的網絡問題。(同學。這個我可幫不了你了)
其他的,我暫時沒有遇到
b 說說代碼沖突吧。
如果你是先修改完代碼還沒有commit,在執行Fetch,那你還沒有feel到代碼沖突。
I.只要你commit到本地服務器,IDE編譯器就自動告訴你,已經沖突,要求你立刻解決。
II.如果你比較任性的話。直接想Commit And Push, IDE編譯器也會很任性的回復你這樣的圖
拒絕你Push,說你還有問題沒有解決。
但是你已經Commit了,但是又無法Push,
這是你應該要執行一下 Pull ,把 剛才Fetch 的代碼植入"本地代碼",這時IDE編譯器才自動告訴你,已經沖突,要求你立刻解決。
並且把沖突文件標記為一個雙向箭頭
如圖
如果你現在還想執意Push代碼,得到的就是下圖:
Repository state : Conflicts(簡單意思就說:大哥,代碼沖突啊,解決后,再提交吧)
然后,你解決后,保存,發現,那個文件還是像下圖的那樣,無法提交。
這時,應該
執行這樣“Add to Index ”的操作,告訴IDE編譯器你已經解決沖突了,如下圖:
現在你就可以去Commit 也好,Commit And Push 也好,IDE編譯器都會通過的(其實告訴你。去吧,騷年!)
通過點擊Merge能清楚知道,你的代碼,解決后沖突的代碼,服務器的代碼
解決后沖突的代碼直接覆蓋你的本地代碼。(或者你點擊Close,然后沖突的代碼直接跳在你的本地代碼,讓你在本地代碼修改。)
解決完沖突后,就可以Commit和Push了。比Eclipse方便一點點。
轉自https://www.cnblogs.com/shortboy/p/4429368.html