Github入门自学

 Git基本概念

自从 google code 关闭了下载服务之后,GitHub作为了目前最好用的免费开源项目托管站点,众多开源项目都托管在github上,其中不乏著名的播放器MPC-HC。
Git 是一个分布式的版本控制系统,大多数的操作可以在本地完成。通过Git工具将代码下载到本地,在本地修改后再上传到github托管的代码库中。GitHub已经成为众多大型开源项目的立足之地,允许来自全球的开发人员共同协作、做出贡献。 在 Git 中的绝大多数操作都只需要访问本地文件和资源,不用连网。因为 Git 在本地磁盘上就保存着所有当前项目的历史更新,所以处理起来速度飞快。
举个例子,如果要浏览项目的历史更新摘要,Git 不用跑到外面的服务器上去取数据回来,而直接从本地数据库读取后展示给你看。所以任何时候你都可以马上翻阅,无需等待。如果想要看当前版本的文件和一个月前的版本之间有何差异,Git 会取出一个月前的快照和当前文件作一次差异运算,而不用请求远程服务器来做这件事,或是把老版本的文件拉到本地来作比较。

Git工作时就在工作目录(工作区,work tree)、暂存区(索引,index file),本地仓库三者之间管理文件的变化情况。Git会监视工作目录中的文件变化(增加新文件、删除文件、修改文件等),需要我们自己动手将变化的文件添加(git add)到暂存区(这就是文件快照),然后再提交(git commit)到本地仓库中。

Git  使用步骤

1. 申请账户

要托管到github,就应该有一个属于自己的github帐号,所以先到github.com上注册

在地址栏输入github.com,填写用户名、邮箱、密码,点击sign up 即可简单注册


2 生成公钥&密钥

2.1首先建立一个存放公钥的文件夹 以  ~/.ssh路径为例

mkdir ~/.ssh

一般会在C盘的用户目录下生成.ssh文件夹。

2.2  键入命令 :ssh-keygen -t rsa -C "email@email.com"

"email@email.com"是github帐号

2.3 提醒你输入key 的名称,输入id_rsa

2.4 在.ssh文件夹中生成两个文件:id_rsa和id_rsa.pub

  [ ssh-keygen 用于为 生成、管理和转换认证密钥,包括 RSA 和 DSA 两种密钥。密钥类型可以用 -t 选项指定。如果没有指定则默认生成用于SSH-2的RSA密钥。]

2.5导入公钥

在2.4中命令执行完毕后,~/.ssh中生成的2个文件,在git bash 中输入   cat ~/.ssh/id_rsa.pub  即可查看公钥


将公钥复制到github网站上:点击“ add SSH公钥”


将公钥赋值进去即可。关于公钥和密钥的解释:

http://www.voidcn.com/article/p-epgnrhqd-bhc.html


接下来一个手把手将最简单的开源项目托管Github入门教程地址

http://jingyan.baidu.com/album/f7ff0bfc7181492e27bb1360.html?picindex=4


git 常用命令解析

http://www.360doc.com/content/12/0503/20/1016783_208451262.shtml

第一次使用GIT

在你安装好Git之后,你需要修改一些配置,才能正常使用Git。

Git通过“git config”命令来配置Git,这个命令有2个选项:--system, --global, 加上默认选项,分别对应Git上3级配置文件。第一个是/etc/gitconfig文件,和--system对应,这是全局配置文件,修改这个文件,将会影响系统上所有的用户,所有的仓库。第二个是你家目录下的/.gitconfig文件,与--global对应,修改它会对你当前用户的所有仓库产生影响。第三个是你仓库中的.git/.gitconfig文件,这是“git config”默认修改的配置文件,它只会对你当前仓库产生影响。

在第一次使用Git时,你需要告诉你的协同开发者,你是谁以及你的邮箱,在你提交的时候,Git需要这两个信息。具体通过以下命令设置:

git config --global user.name “Test OSS”

git config --global user.email oss.lzu.edu.cn@gmail.com

当然你也可以不用--global选项,但这意味这你在每一个仓库中都要这样设置。

同时,你也可以指定你的编辑器,你的Diff工具:

git config --global core.editor vim

git config --global merge.tool vimdiff

你还可以通过”git config --list”命令来查看你的设置。

当你把Git设置好之后,如果你要和从Git服务器上获得仓库,或者向Git服务器提交你的代码(比如github),你可能需要生成你自己的ssh密钥对。Git支持4种与服务器端通信的协议:git、http、ssh和https。其中git只是一个只读协议,也就是说你只可以从服务器端获取仓库,但是你不能提交你自己的代码。而http和https用的很少,大部分都只支持ssh协议和Git协议。

当你通过ssh协议与远端服务器进行通信的时候,你可以通过以下命令生成ssh密钥对:

ssh-keygen -t rsa

如果你没有指定密钥名称和存放路径的话,它默认把两个不对称密钥放在你的家目录下的.ssh目录下,密钥文件默认名称为id_rsa和id_rsa.pub,前者是私钥,后者是公钥。中间可能会要你设定访问密钥密码,这个可以设,可以不设,但为了安全考虑,还是建议你设一个访问密码。否则,意味着任何持有你密钥的人都可以使用该密钥。

然后把你的公钥发给Git仓库管理员,然后你就可以通过ssh协议来访问服务器端,期间程序会自动进行密钥对匹配,如果你设了访问密码,你可能需要输入密码。


每次在本地修改文件之后都要先进行

文件的创建命令  touch   文件名

文件的修改命令   vi   文件名        在修改完成后按Esc  键    然后输入:wq  保存退出

git add 文件名

然后输入   git commit -m "描述"      

这样便可以在github中看到修改

输入 git   status  可以查看当前文件的状态

git log   打印出修改日志(按q 键退出)

最后输入    git push   -u   origin   master 将本地仓库上传到origin所代表的远程仓库的master分支上。

别名机制


相关文章
相关标签/搜索
每日一句
    每一个你不满意的现在,都有一个你没有努力的曾经。
公众号推荐
   一个历史类的公众号,欢迎关注
一两拨千金