1.下载安装git
2.$ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"
3.创建版本库$ mkdir learngit$ cd learngit$ pwdpwd命令用于显示当前目录git init 把当前目录变为可管理的仓库$ git init如果你没有看到.git目录,是因为这个目录默认是隐藏的,用ls -ah命令就可以看见。
4.添加文件用命令git add告诉Git,把文件添加到仓库用命令git commit告诉Git,把文件提交到仓库git commit -m命令 -m后面输入的是本次提交的说明为什么Git添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:$ git add file1.txt$ git add file2.txt file3.txt$ git commit -m "add 3 files."
5.查看结果$ cat readme.txt查看某个文件运行git status命令看看结果git status命令可以让我们时刻掌握仓库当前的状态git diff +文件名 此命令查看当前文件上次修改了哪些内容$ git diff readme.txt diff --git a/readme.txt b/readme.txtindex 46d49bf..9247db6 100644--- a/readme.txt+++ b/readme.txt@@ -1,2 +1,2 @@-Git is a version control system.+Git is a distributed version control system. Git is free software.
6.查看历史记录$git log
7.版本回退在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样)上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100$git reset--hard HEADGit提供了一个命令git reflog用来记录你的每一次命令现在总结一下:HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
8.删除文件$ rm test.txt
二 、创建远程仓库
第1步:创建SSHKey。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:$ ssh-keygen -t rsa -C "youremail@example.com"
第2步:登录github 添加key为什么GitHub需要SSHKey呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。最后友情提示,在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改)。所以,不要把敏感信息放进去。
第3部:把本地仓库和远程仓库关联起来。$ git remote add origin git@github.com:michaelliao/learngit.git请千万注意,把上面的michaelliao替换成你自己的GitHub账户名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。推送成功后,可以立刻在GitHub页面中看到远程库的内容已经和本地一模一样:要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;关联后,
使用命令git push -u origin master第一次推送master分支的所有内容;此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改GitHub给出的地址不止一个,还可以用https://github.com/michaelliao/gitskills.git这样的地址。
实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https。要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆。Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快Git鼓励大量使用分支:查看分支:git branch创建分支:git branch切换分支:git checkout创建+切换分支:git checkout -b合并某分支到当前分支:git merge删除分支:git branch -d
三.命令
http://www.cnblogs.com/cspku/articles/Git_cmds.html