Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

查看Git版本号
git --version

新建SSH
ssh-keygen -t rsa -C ""braum@sina.com"" -f ~/.ssh/braum

初次使用Git前的配置
git config --global user.name ""John Doe""
git config --global user.email johndoe@example.com

添加远程仓库地址
git remote add origin URL

Git的初始化
git init

暂存工作区
git stash

查看暂存的记录
git stash list

暂存 --恢复到--> 工作区
git stash apply
git stash apply stash@{0}
删除暂存记录
git stash drop

暂存内容恢复到工作区,并删除
git stash pop

添加到暂存区
git add 文件名

提交到仓库
git commit -m ""描述""

已跟踪的文件添加和提交
git commit -am ""描述""

修改上一次的提交描述
git commit --amend -m ""新的说明""

修改上一次提交的时间
$ date -R
git commit --amend  --date=""想要commit的时间""

查看状态
git status

恢复暂存区至以前的状态
git reset HEAD

恢复暂存区的某个文件至以前的状态
git reset HEAD 文件名

恢复工作区的某个文件至以前的状态
git checkout -- 文件名
git checkout .

暂时回到某版本
git checkout 版本号

查看历史提交
git log
git log --oneline
git log --decorate --oneline --graph --all

查看所有的历史版本
git reflog

移动指针到上一个版本,暂存区文件回到上一个版本
git reset HEAD~
git reset HEAD~10
git reset --mixed HEAD~

移动指针到上一个版本
git reset --soft HEAD~

移动指针到上一个版本,暂存区和工作区文件回到上一个版本
git reset --hard HEAD~

回滚到指定版本
git reset 版本号
git reset --mixed 版本号

回滚个别文件(此时不移动指针)
git reset 版本号 文件名/路径
git reset HEAD 文件名

比较工作区和暂存区的不同
git diff

比较两个历史版本的不同
git diff 版本号 版本号

比较工作区和仓库中的不同
git diff 版本号

比较暂存区和仓库中的不同
git diff --cached 版本号

删除文件(删除工作区和暂存区的文件)
git rm 文件名

暴力删除(工作区和暂存区的文件不同时)
git rm -f 文件名

只删除暂存区的文件
git rm --cached 文件名

重命名文件
git mv 旧文件名 新文件名

创建分支
git branch 分支名

创建并切换分支
git checkout -b 分支名

切换分支
git checkout 分支名

合并分支
git merge 分支名

删除分支
git branch -d 分支名

推送到远程仓库
git push URL master

拉取远程仓库
git pull URL master

克隆远程仓库
git clone URL

查看分支
git branch -a

拉取远程分支到本地
git fetch
git fetch origin 远程分支名:本地分支名

创建分支A,并将远程分支B拉至本地
git checkout -b 分支名A origin/分支名B

查看远程仓库地址
git remote -v

删除远程分支
git push origin :远程分支名

Git修改远程仓库地址 方法有三种:
1.修改命令
git remote set-url origin URL
2.先删后加
git remote rm origin
git remote add origin URL
3.直接修改config文件

查看所有标签
git tag

添加标签
git tag Qualitrain_release_1.1.1_11-12-18

给某次提交添加标签
git tag v1.1 6224937

查看标签信息
git show Qualitrain_release_1.0_30-09-18

添加详细信息标签
git tag -a v0.1 -m ""version 0.1 released"" 3628164

删除标签
git tag -d Qualitrain_release_1.1_10-10-18

删除远程标签
git push origin :refs/tags/Qualitrain_release_1.1_10-10-18

推送某个标签到远程
git push origin Qualitrain_release_1.1.1_11-12-18

推送所有标签
git push origin --tags

删除 untracked files
git clean -f

连 untracked 的目录也一起删掉
git clean -fd


git submodule init
然后
git submodule update