您的位置:首页 > 编程语言

GitHub的使用总结(含Git,TortoiseGit,TortoiseVSN)

2016-06-16 00:58 295 查看
在体会了git代码管理的优势之后,准备将工作中的经验应用大学习中去,不可否认,开源给代码管理提供了极大的便利,必然会成为未来的一大趋势!

本文主要记录笔者在搭建属于自己的一套git库经历的过程和使用的一些心得,希望给一些未使用过或者git入门的新手们,希望能够带来一些参考或用场。

1)github

github是一个代码管理站点,一些公司也有自己私有的git,原理机制基本大致相同。

首先注册一个github账号,链接一个email,而后创建一个repository,具体可参考知乎:如何使用git,该答案可以建立一个对github网页的基本认知,repository创建成功后网页会自动跳转到可引用ssh或http的链接页面,记住该链接。github也有自己的客户端,能配合网页版一起使用,如果能够入门该客户端,必然能够更加高效。笔者由于习惯原因并没有采用github客户端。

至此,远程一端就搞定了。

2)Git

git是能够配合github使用的一个软件,此外,在其他的一些远程代码管理平台上,git同样可以通吃。

git是bash命令行式的操作,基本语句与linux一致,因此有一定linux基础的人在一定情况下,用git的命令行式操作能够更加高效,也更有成就感。

下载git后安装即可使用,基本使用方法如下(可参考该命令解析,或git help)

首先是git的使用过程:

a)linux命令进到准备安装的目录下-->b)创建本地版本库-->c)配置本地库的用户名与email-->d)添加一个文件到本地缓存区中-->e)将文件提交到本地版本库中-->f)创建远程链接库-->g)输入链接远程库的用户名与密码-->h)将本地文件推送到远程的库中去。

其次是每一步所使用的语句:

a)进入目的目录:cd $Des_dir

b)创建本地版本库:git init

c)配置本地库的用户名与邮箱:

git config user.name “username”

git config user.email “your_email@example.com”

d)添加一个文件到版本库中:

echo "the first file">readme.txt; #文件被创建,在工作区中

git add readme.txt;#文件被添加到暂存区中

git status #查看文件当前的状态,可以看见还在暂存区中【暂存区中的文件颜色为绿色,工作区文件颜色为红色】

e)将文件提交到本地版本库中去:git commit -m readme.txt

f)创建远程链接库:git remote add origin https://github.com/xxx/xxx.git【参考http的链接页面】
g)输入github的用户名与密码

h)将本地文件推送到远程的库中去:git push -u origin master

此时查看github的代码库,可以看到一个readme.txt文件被上传上去了,此外,如果有新的文件更新,则可以使用git commit -m file与git push完成文件推送,若本地文件夹被删除,可以采用git pull进行获取。 

至于其他链接中的密钥设置,笔者将在后续软件使用中来介绍,使用git命令只为初步体会该git的优势,实际使用笔者仍然认为软件比命令行更加方便直观。

3)tortoisegit

tortoisegit是一个对git进行操作的软件,使用该软件将能极大方便命令行操作管理git流程的繁琐。此外,配套的一些软件能够方便看到修改历史,版本差异等等。

基本使用流程与git是一致的,只是转换成了图形化操作:使用流程

a)下载安装好tortoisegit之后,在新建指定目录右键,选择git create repository here,创建一个本地版本库。

b)右键tortoiseGit--setting,在Git下键入用户名与email。

c)右键tortoiseGit--clone,首次会提示输入远程版本库的URL,输入https://github.com/xxx/xxx.git【参考http的链接页面】,即可clone成功,相当于将远程仓库的代码取了下来。

d)本地做修改后,右键目录add并commit到master,输入本次commit的修改log,将文件存入本地版本库,

e)右键目录tortoiseGit-push,输入用户名密码,即可将文件传到github远程版本库中去。

每次上传前,可以通过右键diff查看与原版本的区别,也可以通过log查看各次修改历史。此外,tortoiseGit具备修改windows Icon的能力,每次上传成功或者pull成功后,文件右上角将显示绿色小勾表明该文件与库中一致,一旦对某文件做了修改,该文件与库中文件不一致,绿色小勾将会变为红色小叉,这样对于识别修改的位置将提供很大的方便。

设置公钥与密钥:方法链接

1)借助开始菜单下tortoiseGit的puttygen,generate得到密钥,注意根据提示需要在空白区域晃动鼠标进度条才会前进,产生的密钥以ssh-rsa开头。

2)将所产生的ssh-rsa开头的密钥复制,进入github个人设置中,密钥设置,ssh密钥添加中键入所复制的密钥,取名为ssh-key,保存,即为公钥。

3)在puttygen上将公钥与私钥(name.ppk)都保存为文件放在本地,打开tortoiseGit的setting,git下remote中,输入remote的名字,URL,推送URL,putty即使用所产生的私钥文件,add/save,确定,从此密钥设置完成。或使用如下链接也能完成:密钥设置

至此,tortoiseGit即可正常使用,代码管理也能正常完成了。

4)tortoisesvn

使用指南

tortoiseSVN不需要依赖于git软件,它是完全支持SVN远程代码管理的一个软件,并不依赖于外部的SVN软件完成。

tortoiseGit基本是一个壳,壳内封装的是git的一系列命令,将这些命令以图形化的形式展现出来。

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。

Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

笔者用惯了git,暂时还没感觉到svn的优势。因为中途安装时错安装成svn造成很多不便,故在这里进行解释。

如果先安装了svn,而后再安装git版本,注意,svn版本能具备windows icon的修改权限,windows修改icon的权限一共有15个,若svn占去9个,再安装git后也许会发现图标没有出现应有的小勾和小叉效果,这里笔者推荐二者只使用一种,并且安装卸载后应该重启,这样将能看到icon的修改效果。

----------------------------------------------the  end----------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息