Chinaunix首页 | 论坛 | 博客
  • 博客访问: 110121
  • 博文数量: 57
  • 博客积分: 1200
  • 博客等级: 中尉
  • 技术积分: 555
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-26 21:13
文章分类

全部博文(57)

文章存档

2012年(14)

2011年(43)

分类: 项目管理

2011-12-21 16:29:03

1. 关于GitHub的常见使用方法,请参考官网上面的说明。本篇文档只是针对于常用的,而且容易犯错的用法进      行说明。仅仅是个人观点。

2. 如何使用GitHub?
(1) 创建版本库
     常用的是首先在GitHub上创建一个版本库,然后接下来的工作是在本机创建一个版本库,注意不一定要和原来那个版本的文件名相同。比如原来创建的版本为HelloWorld,那么本机完全可以使用一个文件名为HelloRyan这样的文件夹。只是需要在后续操作中配置相应的信息即可。

(2) 建立本机和服务器的连接与同步 
     本机创建文件夹后,需要进行Git的配置。首先git init来初始化一个版本库,然后需要建立和远程版本库的链接。这里使用git remote add命令来添加。
  1. git remote add origin url
其中origin是你指定的url的别名,你完全可以取其他的名称。而url则是版本库信息对应的路径,这里在GitHub上面你创建的版本库上面,有一个SSH/HTTP/Git Read-Only这些选项,你需要的做的就是选择一个url,填写即可。比如
  1. git remote add helloworld git@github.com:username/repname.git

(3) 配置
     建立起本机和远程的联系之后,还可以对Git进行简单配置,比如邮箱,用户名,比较工具啥的,由于本文不是初级教程,所以此部分内容略。详见官方文档。

(4) 本机进行工程开发,比如新建文件,然后提交。等等

(5) 保证和远程同步,因此需要将本机的版本库push到远程上去,为此使用:
  1. git push origin branch
其中,origin就是刚刚取的别名,比如是helloworld,而后面的就是要推送到的分支名,比如master。具体就看你本机和远程的分支,对应的别名了。

(6) 在其他地方拾取代码 
     完成了上述修改后,可能会在另外一个场合拉取代码,此时还是相同的步骤,创建一个文件夹,git init来初始化版本库,然后同样git remote add xxx url(为url创建别名)。
接下来的任务就是执行pull命令:git pull xxx branchname(其中xxx就是前面的origin,helloworld这些别名)。

下面说说一些用到的体会,总结。
(1) 首先是关于git remote add xxx xxx这个用法。这个做法是取别名,避免了每次都要输入完整的路径名,当     然,你也可以这么做,当然没问题。
    比如:git pull url master,就是把远程的url这个拉取到本机的master分支上。
    可是每次都这么做多麻烦,为此使用别名,以后就直接通过别名来push,pull。
    做完这个工作后,会在.git目录下面的config文件中写入一个项,用来指示该别名的信息,如下所示:
        
  1.     [remote "origin"]
  2.     url = git@github.com:xxx/rep.git
  3.     fetch = +refs/heads/*:refs/remotes/origin/*
上面就是别名origin这个别名的信息。记录了目标远程版本库的地址。

(2) SSH方式还是HTTPS方式。
     在版本库的SSH方式和HTTPS方式是不同的,具体来说就是url信息的不同,但是,实际的认证机制也是不同的。当建立了本机密钥之后,使用ssh方式实际上是不需要再次认证的,而https则每次需要输入密码。
比如,上面的url = git@github.com:xxx/rep.git使用的是ssh方式,那么我进入一个版本库中,push到远程的时候,是不需要输入用户名和密码的,这个只在你初始时候使用到。而如果我的url是以https方式来做的话,如url = ,这样我在进行更新,push或者pull的时候,都会提示你输入GitHub的帐号和密码的。实际上,GitHub是鼓励使用ssh方式的,在官方文档也有说明,不过对于无法使用ssh服务的地方来说,https又多了一种方式,给用户也带来了方便。

(3) 图形界面 
      常用的命令和Git的使用似乎并不需要有太多的说明,但是要想掌握这个工具还是需要很大的尝试和努力。这里推荐下图形化使用工具TGit(Windows)以及gitg(Linux)版本。通过图形化工具能够帮助我们熟悉提交图,掌握基本的操作,有时候图形化界面能够极大的方便我们操作,比如右键可以打Tag,查看分支,所有分支,Diff等等。
      在Windows下面,先要安装Git程序,然后安装TGit,指定Git路径,此时可以利用Cygwin的命令行界面来操作Git,同时可以在右键菜单中使用TGit来查看提交图。
      在Linux下面,就直接使用命令行来工作,同时利用gitg等图形化工具来观察提交图等。

(4) 协同工作。
     在GitHub上面有很多开源项目可以参与到开发学习,可以搜索相关项目,fork该项目,然后在自己的版本库中就会出现,此时通过pull可以更新到本机,然后再进行开发,当你开发之后push上去,再通过向开发者发送请求让其了解到你进行的修复,然后他根据自己的判断是否采纳,更新版本库来决定是否让你的这次提交并入到版本库中。

(5)更多关于Github的使用请参见官网:里面讲述了如何从建立版本库到创建分支,管理版本库的知识。







转自:http://www.cppblog.com/deercoder/archive/2011/11/13/160050.html
阅读(1815) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~