Linux --- git的常用命令以及在github上获取,上传代码

本文是一篇git入门篇的文章,同时是个人的一个学习笔记。涉及的理解程度不会太高,但也会尽量的包含我们日常使用的相关命令。

1:环境说明:
系统:Centos 7
Git version 1.8.3.1
ssh-6.4p1
Gitbub: https://github.com/  时至2015-04-04

2:git操作篇【初始化 git 配置 --- 创建仓库 --- 添加/删除文件 --- 提交更新 --- 查看日志】
2.1:初始化 git 配置
$ git config --global user.name "Your name"
$ git config --global user.email "Your email"
上述配置,配置了使用 git 仓库的人的名字和邮箱(关于这一步的设置,为个人理解就是设置一下使用者的信息。至于是不是很重要,为只知道,在提交代码的时候会用到,而且提交代码对上述设置的要求也不是必须的。如国没有设置上述信息,git 将会以 simple 模式提交。更多关于 git 提交模式的学习,大家可以进一步学习)。
2.2:初始化一个 git 仓库
$ git init
使用过 svn 的同学或许会比较明白,这一步类似于 svnadmin create "repository name"。效果也和 svn 的创建仓库差不多。会在当前目录下生成一个 .git 的隐藏目录。至于 .git 目录下的文件都做了怎样的工作,大家可以进一步学习。
技术分享
2.3:git 仓库中,文件的添加和删除
$ git add foldername 将 foldername 文件夹(下的所有文件)添加到本地 git 仓库
$ git add filename 将 filename 文件添加到本地 git 仓库
$ git rm -rf foldername        将本地仓库中的 foldername 文件夹强制删除(-f 强制执行 -r 递归)
$ git rm filename 将本地仓库中的 filename 文件强制删除

技术分享
解释,直接看图。
2.4:提交更新
git 的每一次提交(commit)都要求填写 “更新信息”。
$ git commit 将以 vi 编辑器的形式,添加“更新信息”。如若更新信息为空,提交失败
$ git commit -m "commit infomation"  提交更新,同时添加更新信息
技术分享
$ git commit -a 将那些没有通过git add标识的变化一并强行提交,但是不建议使用这种方式。
每一次提交,git就会为全局代码建立一个唯一的commit标识代码,用户可以通过git reset命令恢复到任意一次提交时的代码。
$ git commit –-amend –m “message” (在一个commit id上不断修改提交的内容)
2.5:查看 git 日志
$ git log / git show
技术分享

3:gitbub 操作篇
3.1:注册。(不再赘述)
3.2:创建仓库。(repository)直接上图:
技术分享
3.3:获取 ssh 地址。(直接上图,图中右下角 input 部分,复制一下)
技术分享
这个地址,可以理解成 svn 的 checkout 地址。(哈哈,个人理解)
3.4:ssh 生成 公钥,github 添加 ssh key,把代码从 github 下载到本地。
3.4.1:生成 ssh 公钥。(直接上图)
技术分享
整个过程,会要求你输入三次。第一次是 保存公钥 的文件(路径和名字),一般我们直接使用默认文件就可以了。接下来的两次是输入密码(密码和确定密码)(上图中的显示,是要重写我的 公钥,为并没有继续执行)
3.4.2:找到刚才保存你公钥的文件,打开,并复制其中的【部分内容】。直接上图。
技术分享
注意,要打开的是后缀名是 【.pub】的文件。
技术分享
3.4.3:github 添加 ssh key。见图
技术分享
要求你填写一个 title ,这个没什么关系。 just whatever you like
3.4.4:把代码下载到本地
还记得 【步骤3.3】图中右下角的 ssh 地址么?现在要用上它了。
$ git clone 【[email protected]:Guojunzhou-git/nodejs.git】 【】中的地址就是【步骤3.3】中你复制的那个地址。
上个效果图:也算是我们的成果呢。
技术分享
3.5:提交从 github 下载的代码更新
$ git push

4:关于 git 和 ssh 软件的安装。
4.1:安装 git 
$ yum install git 
4.2:安装 openssh【ssh】
$ yum install openssh


本文章的很多东西讲的比较粗浅,大神勿喷。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。