Git常用命令

 
签名:([name][email]两个设置与远程库的name和email无关,这里只是设置一个标识)
1、仓库级别,保存位置为 .git/config
git config user.name [name]
git config user.email [email]
 
2、系统用户级别,保存在操作系统用户目录下,~/.gitconfig  (~标识家目录就是用户目录)
git config --global user.name [name]
git config --global user.email [email]
 
 
git init                                初始化本地库
git status                           查看工作区、暂存区状态
git add [file name]             将工作区的“新建/修改”添加到暂存区
git commit -m "描述信息" [file name]            将暂存区的内容提交到本地库
git log                                显示详细历史
git log --pretty=oneline      一行显示历史
git log --oneline                 一行显示历史,hash码只显示足够标识的部分
git reflog                            一行显示历史,显示{n},n表示到达这个版本需要几步
git reset --hard [局部索引值]               通过hash码前进或后退版本   
git reset --hard HEAD^                       后退版本,^表示后退一步
git reset --hard HEAD~n                     后退版本,n表示后退几步
 
git diff [file name]                               比较工作区与暂存区文件的差异
git diff [本地库中历史版本][文件名]     
 
git branch [分支名]                        创建分支
git branch -v                                  查看所有分支
git checkout [分支名]                     切换分支
git merge [有新内容的分支名]        将目标分支合并到当前分支
 
git remote -v                              查看当前仓库所有远程地址别名
git remote [别名][远程地址]       关联远程库  
git push [别名][分支名]           推送分支到别名对应得远程库
git clone [远程地址]                   完成克隆一个远程仓库到本地,从无到有
git pull [别名][远程库分支名]   从远程库拉取最新的内容,已有仓库拉取最新
git pull = git fetch+git merge
 
git help   查看其它命令帮助
 
合并时发生冲突的解决:产生冲突后会自动进入MERGING的状态
    第一步:编辑文件,删除特殊符号
    第二步:把文件修改到满意的程度,保存退出
    第三步:git add [文件名]
    第四步:git commit -m "日志信息"
    注意:此时commit 一定不能带具体文件名
 
git clone  与  git push区别:
二者都是从远程库拉取仓库,git clone是当本地没有仓库时从远程拉取一个完整的,只需要一个远程地址参数就可以;git pull 是本地有版本库,需要从远程库拉取最先的内容,参数包含地址别名和分支。
 
配置ssh的目的:
每次 git push 都需要输入用户名密码,配置ssh后就可以直接使用公钥连接而不需输入账号密码了。
 
 
多屏显示控制方式:
空格向下翻页
b 向上翻页
q 退出
当输入内容太多时窗口都是文字,按 Ctrl+l 可以快速清屏