github 使用入門

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

學習資料:github

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

http://www.worldhello.net/gotgithub/服務器

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


工具:smartgit,號稱這個工具很好,可是要註冊,不知道如何完成,雖然官方網站對我的開源產品能夠無償使用,可是個人安裝工具仍是過時了,若是有人知道如何使用告訴我一下啊。ssh

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

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

TortoiseGit密鑰的配置

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

TortoiseGit 使用擴展名爲ppk的密鑰,而不是ssh-keygen生成的rsa密鑰。也就是說使用ssh-keygen -C "username@email.com" -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地址,例如:git@github.com:zhulinu/cloudsql.git

填好後點addnew增長便可。

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

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

4522504153_2a7c8f9e91_o.jpg

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

在肯定你已經設置過Remote的狀況下,點「OK」就能夠了。


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

相關文章
相關標籤/搜索