git是后来居上的版本控制工具,目前已经有很是多的的开源产品用此工具,但此版本控制和别的版本控制工具相比仍是有些不太同样,本身走了些弯路,再次记录一下。git
学习资料:github
http://forcefront.com/tag/organization/sql
http://www.worldhello.net/gotgithub/服务器
这两个是中文学习资料,对入门颇有帮助。网络
工具:smartgit,号称这个工具很好,可是要注册,不知道如何完成,虽然官方网站对我的开源产品能够无偿使用,可是个人安装工具仍是过时了,若是有人知道如何使用告诉我一下啊。ssh
TortoiseGit,这个是比较有名的Tortoisesvn的移植版本,在svn的工具中一直是比较好用的工具。相信这个工具应该也不会使人失望。下面介绍的工具中,主要以这个工具为准。ide
安装TortoiseGit就不介绍了,安装完成后,会在资源管理器的右键上有体现。svn
这个是很重要的一部分,由于刚开始的时候,我在这方面耽误了一会时间。工具
TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。也就是说使用ssh-keygen -C "username@email.com" -t rsa产生的密钥在TortoiseGit中不能用。而基于github的开发必需要用到rsa密钥,所以须要用到TortoiseGit的putty key generator工具来生成既适用于github的rsa密钥也适用于TortoiseGit的ppk密钥,配置步骤以下:学习
6)点击上图中的“Add Key”按钮,将第4步保存的ppk私钥添加进来,关闭对话框便可7)经上述配置后,你就可使用
TortoiseGit进行push、pull操做了。“Git Clone...”是得到远程的版本库,“Git Create repository here”是将选定的文件夹做为要建立的版本库。
在要建立版本库的文件夹中点“Git Create repository here”后,会显示:
点“Ok”就会在该文件夹的根目录自动建立一个隐藏文件夹".git" 。
注意:最好找个空的文件夹练习操做,或者备份文件夹。好比误选了Clean up把无版本控制的文件都删了。
建立好以后,须要用git Sync...和服务器进行一次信息同步,同步后就能够取到服务器中项目的版本信息等。
本地提交:
master是Git默认的主要分支(主干),适合单人独自开发。多人开发时能够给每一个人建立一个分支。
切换版本:用switch/checkout命令在切换版本。
按Git Commit -> “master”是将所选文件夹内容提交到用于汇总的库上。
提交修改后,出现:
以上就是如何提交更改到本地的版本库,因此不管有无网络Git均可以用。
远程提交:
本地Commit(提交)后,下面介绍的就是Push到远程啦.
首先,在待提交的本地文件夹内右键单击空白处,选择 TortiseGit->Settings 。
而后选择Config,并填写github.com中的用户名和邮箱。
固然填其余的也能够,这里填的是每次提交后,版本库中显示出来的做者名和联系方式。
接着选择Remote,能够看见右图有3个须要填写的文本框。
Remote:远程传送的一个代号(能够随便起个名字,本身看得懂就行)
Url:github的url地址,例如:git@github.com:zhulinu/cloudsql.git
填好后点addnew增长便可。
要从本地文件夹更新至网络库,选中文件夹(必须是Git初始化过的),而后右键单击,选择TortoiseGit->Push...,弹出下列窗口。
选择要push的本地分支,和远程目标的分支,点“OK”。
要从网络库更新至本地文件夹,相应的,选择TortoiseGit->Pull...。
在肯定你已经设置过Remote的状况下,点“OK”就能够了。
本地提交后,能够不用手动远程提交,只要网络通,工具会自动同步到远程,大概10分钟左右把,固然也能够手工远程提交。