github 使用入门

git是后来居上的版本控制工具,目前已经有非常多的的开源产品用此工具,但此版本控制和别的版本控制工具相比还是有些不太一样,自己走了些弯路,再次记录一下。

学习资料:

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

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

这两个是中文学习资料,对入门很有帮助。

工具:smartgit,号称这个工具很好,但是要注册,不知道如何完成,虽然官方网站对个人开源产品可以免费使用,但是我的安装工具还是过期了,如果有人知道如何使用告诉我一下啊。

TortoiseGit,这个是比较有名的Tortoisesvn的移植版本,在svn的工具中一直是比较好用的工具。相信这个工具应该也不会令人失望。下面介绍的工具中,主要以这个工具为准。

安装TortoiseGit就不介绍了,安装完成后,会在资源管理器的右键上有体现。

TortoiseGit**的配置

这个是很重要的一部分,因为刚开始的时候,我在这方面耽误了一会时间。

TortoiseGit使用扩展名为ppk的**,而不是ssh-******生成的rsa**。也就是说使用ssh-****** -C "[email protected]" -t rsa产生的**在TortoiseGit中不能用。而基于github的开发必须要用到rsa**,因此需要用到TortoiseGit的putty key generator工具来生成既适用于github的rsa**也适用于TortoiseGit的ppk**,配置步骤如下:

1)运行TortoiseGit开始菜单中的puttygen程序,如下图示
github 使用入门

2)点击“Generate”按钮,鼠标在上图的空白地方来回移动直到进度条完毕,就会自动生一个随机的key,如下图示
github 使用入门
如有需要,可以为**设置对应的访问密码,就是修改上图中“Key passphrase”和“Confirm passphrase”的值。
3)将上图中多行文本框的内容全选、复制,并粘贴到github账户的 SSH public key中,这就是适用于github的公钥。
4)点击上图中的“Save private key”按钮,将生成的key保存为适用于TortoiseGit的私钥(扩展名为.ppk)。
5)运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,图标显示为一个小图标,双击该图标,弹出key管理列表,如下图示
github 使用入门
6)点击上图中的“Add Key”按钮,将第4步保存的ppk私钥添加进来,关闭对话框即可7)经上述配置后,你就可以使用TortoiseGit进行push、pull操作了。

TortoiseGit的基本使用

“Git Clone...”是获得远程的版本库,“Git Create repository here”是将选定的文件夹作为要创建的版本库。

在要创建版本库的文件夹中点“Git Create repository here”后,会显示:

github 使用入门

点“Ok”就会在该文件夹的根目录自动创建一个隐藏文件夹".git" 。

注意:最好找个空的文件夹练习操作,或者备份文件夹。比如误选了Clean up把无版本控制的文件都删了。


创建好之后,需要用git Sync...和服务器进行一次信息同步,同步后就可以取到服务器中项目的版本信息等。

远程使用Git

提交代码:

本地提交:

master是Git默认的主要分支(主干),适合单人独自开发。多人开发时可以给每个人创建一个分支。

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


github 使用入门

按Git Commit -> “master”是将所选文件夹内容提交到用于汇总的库上。

提交修改后,出现:

github 使用入门

以上就是如何提交更改到本地的版本库,所以无论有无网络Git都可以用。


远程提交:

本地Commit(提交)后,下面介绍的就是Push到远程啦.

首先,在待提交的本地文件夹内右键单击空白处,选择 TortiseGit->Settings 。

github 使用入门

然后选择Config,并填写github.com中的用户名和邮箱。

当然填其他的也可以,这里填的是每次提交后,版本库中显示出来的作者名和联系方式。

github 使用入门

接着选择Remote,可以看见右图有3个需要填写的文本框。

Remote:远程传送的一个代号(可以随便起个名字,自己看得懂就行)

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

填好后点addnew增加即可。

github 使用入门

要从本地文件夹更新至网络库,选中文件夹(必须是Git初始化过的),然后右键单击,选择TortoiseGit->Push...,弹出下列窗口。

选择要push的本地分支,和远程目标的分支,点“OK”。

github 使用入门

要从网络库更新至本地文件夹,相应的,选择TortoiseGit->Pull...。

在确定你已经设置过Remote的情况下,点“OK”就可以了。


本地提交后,可以不用手动远程提交,只要网络通,工具会自动同步到远程,大概10分钟左右把,当然也可以手工远程提交。