github 使用入門

git是後來居上的版本控制工具,目前已經有非常多的的開源產品用此工具,但此版本控制和別的版本控制工具相比還是有些不太一樣,自己走了些彎路,再次記錄一下。

學習資料:

http://forcefront.com/tag/organization/

http://www.worldhello.net/gotgithub/

這兩個是中文學習資料,對入門很有幫助。


工具:smartgit,號稱這個工具很好,但是要註冊,不知道如何完成,雖然官方網站對個人開源產品可以免費使用,但是我的安裝工具還是過期了,如果有人知道如何使用告訴我一下啊。

TortoiseGit,這個是比較有名的Tortoisesvn的移植版本,在svn的工具中一直是比較好用的工具。相信這個工具應該也不會令人失望。下面介紹的工具中,主要以這個工具爲準。

安裝TortoiseGit就不介紹了,安裝完成後,會在資源管理器的右鍵上有體現。

TortoiseGit密鑰的配置

這個是很重要的一部分,因爲剛開始的時候,我在這方面耽誤了一會時間。

TortoiseGit 使用擴展名爲ppk的密鑰,而不是ssh-keygen生成的rsa密鑰。也就是說使用ssh-keygen -C "[email protected]" -t rsa產生的密鑰在TortoiseGit中不能用。而基於github的開發必須要用到rsa密鑰,因此需要用到TortoiseGit的putty key generator工具來生成既適用於github的rsa密鑰也適用於TortoiseGit的ppk密鑰,配置步驟如下:

1)運行TortoiseGit開始菜單中的puttygen程序,如下圖示
TortoiseGit密鑰的配置 - rongjih - dragon的博客
 
2)點擊“Generate”按鈕,鼠標在上圖的空白地方來回移動直到進度條完畢,就會自動生一個隨機的key,如下圖示
TortoiseGit密鑰的配置 - rongjih - dragon的博客
 如有需要,可以爲密鑰設置對應的訪問密碼,就是修改上圖中“Key passphrase”和“Confirm passphrase”的值。
3)將上圖中多行文本框的內容全選、複製,並粘貼到github賬戶的 SSH public key中,這就是適用於github的公鑰。
4)點擊上圖中的“Save private key”按鈕,將生成的key保存爲適用於TortoiseGit的私鑰(擴展名爲.ppk)。
5)運行TortoiseGit開始菜單中的Pageant程序,程序啓動後將自動停靠在任務欄中,圖標顯示爲TortoiseGit密鑰的配置 - rongjih - dragon的博客,雙擊該圖標,彈出key管理列表,如下圖示
TortoiseGit密鑰的配置 - rongjih - dragon的博客
 

6)點擊上圖中的“Add Key”按鈕,將第4步保存的ppk私鑰添加進來,關閉對話框即可7)經上述配置後,你就可以使用

TortoiseGit進行push、pull操作了。

TortoiseGit的基本使用

“Git Clone...”是獲得遠程的版本庫,“Git Create repository here”是將選定的文件夾作爲要創建的版本庫。

在要創建版本庫的文件夾中點“Git Create repository here”後,會顯示:

4522376307_80ca61889d_o.jpg

點“Ok”就會在該文件夾的根目錄自動創建一個隱藏文件夾".git" 。

注意:最好找個空的文件夾練習操作,或者備份文件夾。比如誤選了Clean up把無版本控制的文件都刪了。

 

創建好之後,需要用git Sync...和服務器進行一次信息同步,同步後就可以取到服務器中項目的版本信息等。

遠程使用Git

提交代碼:

本地提交:

master是Git默認的主要分支(主幹),適合單人獨自開發。多人開發時可以給每個人創建一個分支。

切換版本:用switch/checkout命令在切換版本。

 

4523010728_25ab5df92e_o.jpg

按Git Commit -> “master”是將所選文件夾內容提交到用於彙總的庫上。

提交修改後,出現:

4523010820_9570934549_o.jpg

以上就是如何提交更改到本地的版本庫,所以無論有無網絡Git都可以用。

 

遠程提交:

本地Commit(提交)後,下面介紹的就是Push到遠程啦.

首先,在待提交的本地文件夾內右鍵單擊空白處,選擇 TortiseGit->Settings 。

4523010780_daaec3acf1_o.jpg

然後選擇Config,並填寫github.com中的用戶名和郵箱。

當然填其他的也可以,這裏填的是每次提交後,版本庫中顯示出來的作者名和聯繫方式。

接着選擇Remote,可以看見右圖有3個需要填寫的文本框。

Remote:遠程傳送的一個代號(可以隨便起個名字,自己看得懂就行)

Url:github的url地址,例如:[email protected]:zhulinu/cloudsql.git

填好後點addnew增加即可。

要從本地文件夾更新至網絡庫,選中文件夾(必須是Git初始化過的),然後右鍵單擊,選擇TortoiseGit->Push...,彈出下列窗口。

選擇要push的本地分支,和遠程目標的分支,點“OK”。

4522504153_2a7c8f9e91_o.jpg

要從網絡庫更新至本地文件夾,相應的,選擇TortoiseGit->Pull...。

在確定你已經設置過Remote的情況下,點“OK”就可以了。


本地提交後,可以不用手動遠程提交,只要網絡通,工具會自動同步到遠程,大概10分鐘左右把,當然也可以手工遠程提交。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章