文档章节

一篇github基础教程,大手勿喷。看别人的。自己刚照着这个学会

明舞
 明舞
发布于 2012/07/24 21:08
字数 973
阅读 2078
收藏 13

文档都放在github上(地址:https://github.com/hotplay/playframework-document-cn),参与者可通过git进行合作。

但很快有群友问怎么用。考虑到git与github在国内使用得还不够广泛,我打算写个博客,讲解一下基本用法。

首先需要下载git

官方主页:http://www.git-scm.com/

当前最新版本v1.7.6.1下载地址:http://code.google.com/p/msysgit/downloads/detail?name=Git-1.7.6-preview20110708.exe&can=3&q=

安装git

安装比较简单,一路next即可,其中有两个地方需要注意一下。


Git Bash是指git安装好之后,有一个专用的命令行工具(开始->Git->Git Bash),像cmd一样,截图如下:


它可以执行一些linux上的命令,方便操作。但在windows上,不能复制粘贴,不太好用。所以我们一般会选择第2项或第3项,在windows的cmd上直接运行git命令。

另一个窗口是:


让我们选择如何处理文本文件中的选行符。git考虑到合作者可能在不同的操作系统下,如windows下使用\r\n,linux下使用\n,mac下使用\r。为了既能保证服务器上的代码使用相同的换行符,在各自的电脑上又能使用各自的换行符,所以有三种处理方式:

  1. 下载时把换行符变成\r\n,提交时变成\n

  2. 下载时不转换,提交时变成\n

  3. 下载和提交时都不处理

作为windows用户,我们应该选择第一项。

关于git gui

安装好git后,还有一个git gui,如下图:


个人觉得这个东西实在太难用,不如不用。我们可以使用命令行,也可以在eclipse下使用egit。其它如idea下也有对应的工具。

此时我们已经可以下载github上的代码

对于我们只想下载不打算提交的项目,现在已经可以下载了。以playframework-document-cn为例:

打开https://github.com/hotplay/playframework-document-cn,点击下图中的Git Readonly按钮:


把右边显示的git://github.com/xxx这一串地址拷贝下来,然后打开命令行,输入命令:

git clone git://github.com/hotplay/playframework-document-cn.git

 


git会自动把代码下载下来,放在当前目录下的playframework-document-cn目录下:


注意这是readonly的,只能看,不能提交。

尝试以SSH方式下载

如果我们想提交,除了我们的帐号已经加入到该项目的提交者白名单中,最最基本的条件是,我们要生成公私钥,并把公钥填到github上。现在尝试SSH方式,会提示错误:


提示说我们没有权限。

生成公私钥

公私钥的认证方式在很多地方都可以使用,具有较好的安全性。我们可以使用一些工具生成,小心保管好生成的公钥和私钥,它可以重复使用。公钥的信息可以公开(它实际上就是一段字符串),而私钥一定不可以让其它人知道。

关于生成方式,在github上有专门的帮助内容,请参看:http://help.github.com/ssh-issues/

因为此处比较难讲,所以省略,请自行google或baidu

把生成的公私钥放在用户目录下


我的用户目录是C:\Documents and Settings\nowind,放在.ssh目录下(如果没有,新建)。其中前两个文件是我们生成的,known_hosts是后来自己生成的,不需管。

将公钥上传到github上


再次下载

git clone git@github.com:hotplay/playframework-document-cn.git

 

期间会提示你输入你生成密钥时的密码,如果正确,将如下图所示:


下载egit

如果你使用eclipse,可下载egit插件。地址:http://eclipse.org/egit/download/

关于egit的使用太琐碎,请自行研究。

tags: github
posted in Play by Freewind

© 著作权归作者所有

共有 人打赏支持
明舞
粉丝 229
博文 424
码字总数 516555
作品 0
程序员
加载中

评论(1)

夕水溪下
夕水溪下
不错
程序员常用的技术网站

作为一个每天都泡在电脑面前的程序员来说,选对一些学习的地方、和大家交流的地方就显得尤为重要。当我们有问题的时候我们想第一时间解决,当我们想学习一门新技术的时候我们可以立马get教程...

javayou
2016/07/20
88
0
如何高效入门Github?

如今的编程,早已不是单打独斗的模式了。优秀的编程人员,甚至是初学者,都必须学会如何与他人高效协作。Github是编程协作中须要掌握的基础知识。如何尽快入门,少走弯路呢?希望读过本文,你...

王树义
2017/11/05
0
0
在Github Pages上建立Jekyll博客

意义 我认为:一个没有博客的程序员不是一个优秀的程序员。因为写代码本身的创作过程和写文章是类似的,能写代码就能写文章,我不相信一个优秀的程序员会写不出文章来。写文章的好处有三大点...

张京
2017/10/22
0
0
从零到专业,程序员快速入门Python的3种方法!

Python作为一门网红编程语言,这一阵子也红的发紫。 有不少的程序员表示,对这门编程语言非常感兴趣。所谓人生苦短,人生苦短我用python。 从零到专业,程序员快速入门Python的3种方法! 不过...

W3Cschool
2017/12/19
0
0
零基础Python新手应该怎么去学习?

对于完全没有编程经验的初学者,在学习python的时候,面对的不仅仅是python这门语言,还需要面临“编程”的一些普遍问题,比如: 从零开始,不知道从何入手,找了本编程教材发现第二章开始就...

铁扇公主1
2017/04/27
759
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Go语言_通神之路(2)

1、包 每个Go程序都是由包构成,从main包开始运行,就是我上一篇讲到的,都是从main函数开始执行,但是必须在main包下面! package mainimport ( "fmt" "math/rand")func ...

木九天
昨天
5
0
51.php-fpm的pool 慢日志 open_basedir 进程管理

12.21 php-fpm的pool 12.22 php-fpm慢执行日志(测试时报错) 12.23 open_basedir 12.24 php-fpm进程管理 12.21 php-fpm的pool: php-fpm里的pool也叫池子,咱们之前加入过www的配置,这个w...

王鑫linux
昨天
0
0
java内存模型概述

1、Java虚拟机运行时数据分区图 程序计数器:线程私有,是一块较小的内存空间,它是当前线程所执行的字节码文件的行号指示器 java虚拟机栈:线程私有,其生命周期与线程相同,这也就是我们平...

京一
昨天
2
0
shell学习之test语法

因为if-then语句不能测试退出状态码之外的条件,所以提供了test, 如果test命令中列出的条件成立,test命令就会退出并返回退出状态码0;如果条件不成立,test命令就会退出并返回非零的退出状态...

woshixin
昨天
0
0
openJDK之如何下载各个版本的openJDK源码

如果我们需要阅读openJDK的源码,那么需要下载,那么该去哪下载呢? 现在JDK已经发展到版本10了,11已经处于计划中,如果需要特定版本的openJDK,它们的下载链接在哪呢? 1.openJDK的项目 链接...

汉斯-冯-拉特
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部