之前弄過一次 後來因爲一直在本機開發,所以用的是本地的Git
通過IntelliJ Idea + GitHub 管理代碼倉庫
更加方便的看到版本提交歷史+更變詳細對比,公司+宿舍+筆記本三方同步開發
一.事先準備
1.安裝Git
Git下載: http://git-scm.com/downloads 最新版本是2.1.2
2.註冊GitHub賬號
3.設置代理(可選)
GitHub有一定記錄是被牆的…在公司裏能用Chrome直接改hosts訪問,但是用Idea就無法連接上。所以有必要使用代理、
GoAgent自己去搜一下下載啦
開啓GoAgent代理之後,默認是127.0.0.1:8087 作爲VPN的地址。
二.IntelliJ Idea添加Git與GitHub支持
Idea本身就支持Git和GitHub,不過先要設置Git的位置和跟你的GitHub賬號連接起來。
1.設置Git的路徑
在Idea中,File-Settings-Version Control-Git 中,在右側指定git.exe的位置
2.添加GitHub賬號
2-0.在Idea中設置代理(可選)
Settings-HTTP Proxy中,在右側選中Manual proxy configuration
host name 填127.0.0.1
Port number 填8087
2-1.設置GitHub賬號
Settings-Version Control-GitHub
host填寫github.com
Login和password 分別填寫自己的GitHub賬號密碼
然後下面的Connection timeout 連接時長上限
修改成一個比較大的值
比如50000(輸入完記得回車,不然設置沒有生效)
然後嘗試點Test
如果彈框如下,則說明連接成功。
三.同步工程
在同步工程之前,我先說說我對Git在版本管理方面的一些理解:
大概是這樣:
1.一開始,先創建一個項目工程的初始版本A,然後通過Git生成一個倉庫A
2.在A的基礎上,進行多人協作開發/異地開發(這個其實上是一樣的)的時候,先從倉庫A那裏同步,拿到最新版本的A的一份拷貝。這個動作成爲Pull
3.拿到拿到倉庫A的拷貝之後,程序員A和碼農B負責編寫不同的部分,反正不會修改到同一份代碼文件,大部分情況是一部分負責做UI前端,另一部分負責做後臺什麼的。都是修改或者添加部分代碼文件。
在做好自己的單元工作的話,大概會變成這樣
4.這時候程序員A給自己修改後的整個工程項目
打了備註(commit):”程序員A,增加了XXX後臺功能”,碼農B 給自己的整個項目工程
打了備註 “碼農B, 用蘋果風格美化了界面”,之後提交到本地Git倉庫中。
此時本地的Git倉庫
已經做好他們修改後的項目工程文件
與原來倉庫A的文件對比,記錄在Git記錄中。
然後程序員A和碼農B同時把自己做好的工程文件 push到遠程的Git倉庫中,遠程的Git倉庫就爲倉庫A添加了兩個分支。
5.這時候,項目經理定時檢查進度。
查看了AB的分支之後,決定他們兩個這段時間的工作成果可以融合起來
就決定將這兩個分支合併起來(merge)如果不合並起來,下次再開始修改
不知道要從誰的分支開始進行工作,從程序員A的那個分支進行工作,就會發現碼農B的界面代碼又成了沒修改過的那部分,還要碼農B再修改。這樣就是加大工作量,這樣也側面反映出低耦合,MVC模式對於團隊合作的優點之處。
四.通過GitHub同步
在瞭解了Pull,Push的意義之後,可以來通過Idea進行
本地倉庫創建,然後Share到GitHub,進行pull和push
1.創建本地倉庫
對於沒有在GitHub上創建倉庫的一個本地項目,首先要在本地中創建本地倉庫
先選中整個項目目錄,在菜單欄VCS-Git-Add 添加一個本地倉庫
2.Share to GitHub
菜單欄VCS-Import into version control-share project on GitHub.
然後填寫項目信息
回車
就能在你的GitHub主頁創建一個新的開源項目,大概如下
3.Pull and Push
比如我在公司和宿舍都進行開發。每天下班不能搬着電腦回去吧,在單人開發的時候,這個是一個很好的同步方式。相當於雲筆記那種功能。
當我快要下班的時候,我就把項目先添加備註,表示這次項目的Push之前,我對其進行了什麼修改的簡述。
我覺得這也是一個很好的版本功能更新記錄。
添加了Commit之後,可以進行Push來上傳修改後的分支
下圖是push
4.在GitHub上查看版本更替記錄
在你的GitHub上
點擊最上面的那部分查看,可以看修改了那些地方