Git命令
git remote
列出远程仓库的详细信息,在别名后面列出URL地址
gite remote -v
git remote --verbose
添加远程仓库
git remote add <远程仓库的别名> <远程仓库的URL地址>
git reflog
可以查看所有分支的所有操作记录(包括了commit和reset的操作和cimmit记录)
git init
初始化一个本地版库(仅用执行一次)
git branch
列出本地的所有分支,当前所在分支以 "*" 标出
创建新分支,新的分支基于上一次提交建立:git branch <分支名>
修改分支名称:git branch -m [<原分支名称>] <新的分支名称>
强制修改:git branch -M [<原分支名称>] <新的分支名称>
删除指定的本地分支:git branch -d <分支名称>
强制删除:git branch -D <分支名称>
git fetch
将远程仓库所有分支的最新版本全部取回到本地:git fetch <远程仓库的别名>
将远程仓库指定分支的最新版本取回到本地:git fetch <远程主机名> <分支名>
git merge
把指定的分支合并到当前所在的分支下
git merge <分支名称>
git commit(后跟注释内容)
git commit-m "本次提交描述"
将git add .存入暂存区修改内容提交至本地仓库,若文件未添加至暂存区,提交时不会提交任何更改(注意要线提交至本地仓库)
git commit-a
可以看作是运行了git add -u 把所有当前目录下的文件加入到缓存区域再进运行git commit(对于新增的文件,并没有被commit)(需要先进行add到缓存区)
git commit-amend
修改最近一次提交
git add
保存修改和删除,但是不包括新建文件:git add .
保存所有的修改:git add -A
保存修改和删除,不包括新建文件:git add -u
添加所有修改、已删除、新增的文件到暂存区中,省略 <文件路径> 即为当前目录:git add -A [<文件路径>]
git status
查看当前仓库状态
文件状态:A 新增,M 修改,D 删除,?? 未添加到Git中
git reset
回退某一个版本:git reset commit-id
根据-soft -mixed -hard,对working tree和index和HEAD进行重置
soft参数:git reset --soft HEAD~1 意为将版本库软回退1个版本,所谓软回退表示将本地版本库的头指针全部重置到指定版本,且将这次提交之后的所有变更都移动到暂存区
mixed参数:git reset HEAD~1 意为将版本库回退1个版本,将本地版本库的头指针全部重置到指定版本,且会重置暂存区,即这次提交之后的所有变更都移动到工作区
hard参数:git reset --hard HEAD~1 意为将版本库回退1个版本,但是不仅仅是将本地版本库的头指针全部重置到指定版本,也会重置暂存区,并且会将工作区代码清空(工作区是clean状态)
注意:soft参数和默认参数都不会修改工作区代码,唯有hard会修改工作区代码
git pull
从远程更新代码
git diff
比较当前文件和暂存区中文件的差异,显示没有暂存起来的更改
比较两个分支之间的差异:git diff <分支名称> <分支名称>
git revert
生成一个新的提交来撤销某次提交
git checkout
可操作分支,也可以操作文件
切换到已存在的指定分支:git checkout <分支名称>
git clone
从远程仓库克隆一个版本库到本地。
默认在当前目录下创建和版本库名相同的文件夹并下载版本到该文件夹下:git clone <远程仓库的网址>
git mv
重命名指定的文件或者文件夹:git mv <源文件/文件夹> <目标文件/文件夹>