合作開發項目,你就會用到git,現在碼雲比較簡單,因為是中文化界面,學習起來難度比較低,又支持5人以下項目免費,所以學習碼雲更好入手一點。
下面的東西適合一些個基礎比較低的用戶學習,因為我就是啊。。。我都配圖啦,共勉。
(1)我現在要上手啦,新建了一個mayunDemo文件夾,切個圖紀念紀念。

(2)我已經有注冊碼雲了,注冊是個前提工作,你去注冊一個先。。。
網址給你:https://gitee.com
(3)你已經注冊了一個碼雲賬號啦!
點擊右上角個人用戶,你就進入了用戶界面了,你需要一個SSH公鑰,沒有公鑰就生成一個。
使用SSH公鑰可以讓你在你的電腦和碼雲通訊的時候使用安全連接(Git的Remote要使用SSH地址)。

(4)生成公鑰,人家已經有提示啦,我只是給你截個圖!
。。。仔細一想,算啦,截圖都懶得給你截。
(5)因為我需要的問題,所以先交刪除。。。

我的馬雲。。。碼雲,倉庫,查看你的庫存。。。然后當然是點開它咯!

點擊管理,進入管理界面

按照流程提示,一步一步刪除。。。難度系數不高,請自行實踐。
刪除倉庫的時候,會反復提醒,反復驗證,挺人性化的。
在這里先刪為敬!
(6)現在要開始創建倉庫了!你應該知道下面的操作,因為上面提到倉庫了,你點擊新建倉庫就行了。
自己玩就建個私人的。

碼雲倉庫會自帶文件,關於使用性能優化的(哈哈,是我瞎猜的),額,

強烈建議你仔細看完這幾行代碼,設置了用戶和郵箱,會為后面身份識別省很多事。
(7)找個文件夾下面,空白處右鍵,打開你的git(很像cmd小黑窗口)

納尼?你沒有。。。天啊
好吧,補了一篇git安裝,自己點開看看。
(8)說句實話,我的實力已經不夠了,正在參考資料
我們想修改倉庫里的文件,是不是應該先下載那一份呢。。。
https://www.oschina.net/question/82993_133520
這個網址,是官網帶的連接博客,名叫 “ 如何導入外部Git倉庫到中國源代碼托管平台(Git@OSC)”,
名字威武霸氣,提供了3中情況下的導入方案。
我們實踐第一種,其他的我也不會撒。
git clone --bare https://github.com/bartaz/impress.js.git (例子)

他說我克隆了一個空倉庫,我丟~
於是乎,我把他提示的代碼,就是幾行簡單的入門命令,輸了一次。。。
好吧,錯的東西即使翻譯之后也不知道怎么該,嘗試最后兩行代碼。。。
我往mayunDemo里面放了一個文件,然后我的編譯器后面出現了一個綠色的u

除非你上傳了改變,這個u才會消失,但是暫時只能這樣。。。不甘呀。。。
(9)那就提交唄。。。查資料,怎么提交呢?
1 提交代碼: 2 1) git add . 3 2)git commit -m "分支名" 4 3)git push (如果有代碼沖突,先git pull 在git push)

我們直接打開還沒有操作的庫,所在的分支就是master,因為你git clone克隆的分支就是默認分支。
下面介紹以下git add
git add -A和 git add . git add -u在功能上看似很相近,但還是存在一點差別
git add . :他會監控工作區的狀態樹,使用它會把工作時的所有變化提交到暫存區,包括文件內容修改(modified)以及新文件(new),但不包括被刪除的文件。
git add -u :他僅監控已經被add的文件(即tracked file),他會將被修改的文件提交到暫存區。add -u 不會提交新文件(untracked file)。(git add --update的縮寫)
git add -A :是上面兩個功能的合集(git add --all的縮寫)
(10)好了,更新庫的綠帽子已經沒有了!

這個黃點點是啥呢?
綠色,已經加入控制暫未提交
紅色,未加入版本控制
藍色,加入,已提交,有改動
白色,加入,已提交,無改動
灰色:版本控制已忽略文件。

這里顯示我們已經提交上去了!而界面上呢,許多功能因為你的庫的存在,可以使用了!
(11)早上好!又到了博客湊字數時間!
好了,我們進入昨天的文件,進去之后呢,直接就進入了master分支
我們查看分支git branch

(12)分支的意義
分支對於團隊來說作用太大了。比如說一個項目現在是1.0版,那么開發團隊可能要同時進行1.1版和2.0版的開發,這樣代碼就會出現較大分歧。這時候就需要用到分支了,不同的任務組在不同的分支上開發,互相之間不會影響。再比如說,需要向項目中添加一個新功能,一般的團隊都不會直接在主分支上修改,都會新建一個分支,在上面更改代碼。這樣做的好處就是保證主線代碼的完整性和可用性,也就是說,主線上都是穩定的代碼,可以直接拿來發布的。
再說說分支在GIT上的特點:GIT的技術可以說是非常強大,說一切開發都依賴於分支一點都不過分。一般項目的master分支都是穩定的代碼,可以直接發布或者被項目之外的人使用。新特性和BUG修改都在不同的分支上進行開發和測試。這樣規范了整個軟件的開發流程。分支之間的互不影響這種特性可以增加團隊合作的效率。GIT分支的另外一個重要特性就是可以合並不同軟件倉庫(fork)的分支。大體就是:開發團隊有一個主軟件倉庫,開發者可以fork這個倉庫,相當於克隆了一個私有的軟件倉庫,然后開發者就可以在自己的軟件倉庫中建立分支並開發測試,測試完畢之后,可以向主軟件倉庫提交merge request,這樣新開發的特性就會被合並到主軟件倉庫的某個分支中。這種特性極大地推動了開源項目,多年前參加開源項目都是神話,自從GIT出現后,每個人都可能成為開源項目的貢獻者,就是基於這種特性(請參照Github的pull request,和merge request是同一個東西)。
(13)新建一個本地分支 : git branch 分支名

新建一個本地分支newDemo,然后查看,嗯啊,就有啦
(14)切換分支 : git checkout 分支名

切換本地分支newDemo,下面一行代碼最后分支顯示我們切換了分支。
Git checkout 分支名,執行后,你本地的數據,,目錄結構,都會自動更新成該成員的分支的內容我又新建了一個分支,修改了其中一條,但是呢,如果添加了一個文件,沒有add的話,git會不動
(16)合並分支。。。:git merge 分支名

合並之后,newDemo2還在。
(17)刪掉他!。。。刪除本地分支: git branch -D 分支名

好了,nbewDemo2刪除掉了。
(18)我們查看碼雲界面,你修改本地不會引起遠程服務器的改變

推送一下遠程就好了。
(19)代碼有沖突,就需要下拉,這里不演示了,等項目遇到說。
提交代碼:1) git add . 2)git commit -m "分支名" 3)git push (如果有代碼沖突,先git pull 在git push)
(20)git 回退到某個歷史版本: git reset --hard 1123123bbb9c00bbdca96(分支ID)

(21)、修改推到遠程服務器:git push -f -u origin 分支名
總結:反正就這么下來了,一邊研究一邊敲,輸出式學習比輸入式學習強太多,以后做作業用git簡單提交下,慢慢熟悉,慢慢看bug。
