git 常用操作

2017-12-04  本文已影响15人  疯轻云淡

回退相关操作

工作区

命令 含义
git checkout -- file.txt 丢弃 file.txt 中的修改
git reset --hard 重设暂存区所有文件并且还原工作区所有修改

暂存区

命令 含义
git reset 重设暂存区所有文件
git reset HEAD 撤销最新一次的 add 状态
git reset file.txt file.txt 的放入工作区
git reset --hard 重设暂存区所有文件并且还原工作区所有修改

版本区

命令 含义
git revert HEAD 撤销最新一次的 commit ,分支没有改动文件才能执行(存在该commit记录)
git reset <commit> 删除最新一次的 commit 并且重设暂存区所有文件 (不存在该commit版本号)
git reset HEAD~2 将当前分支倒退两个提交(高危操作)
git reset --hard HEAD^ 回退上一个版本

删除文件

命令 含义
rm file.txt 删除文件
git checkout -- file.txt 撤销删除 (未commit之前)
git clean -n 查看那些未被跟踪文件会被移除
git clean -f 移除当前目录下未被跟踪的文件
git clean -df 移除未跟踪的文件以及目录
git clean -f <path> 移除未跟踪的文件,但限制在某个路径下
git clean -xf 移除当前目录下未跟踪的文件,以及 Git 一般忽略的文件

创建与合并分支

命令 含义
git checkout -b dev 创建并且切换到dev分支
git checkout -b hotfix dev 基于dev分支创建一个hotfix分支
git checkout dev 切换到dev分支
git branch 查看所有的分支
git branch -d dev 删除dev分支(当前分支无法自行删除)
git branch -D dev 强制删除分支(用于未合并分支)
git merge dev 将dev分支合并到当前分支

远程仓库的操作

命令 含义
git remote -v 查看远程仓库的详细信息
git remote add remote-name URL 添加远程仓库
git push origin master 将内容提交到远程仓库 origin 的 master 分支上
git remote rm origin 将远程仓库 origin 删除
git remote rename origin pb 将远程仓库 origin 改为 pb
git clone URL 克隆一个远程仓库,这里的URL是远程仓库的地址
git pull origin 将远程仓库中更新的数据拉到本地
git pull origin dev 拉取远程仓库dev分支到本地
git push origin aaa 将 aaa 分支推送到远程仓库
git pull --rebase URL git rebase 代替 git merge 合并本地分支
git push --force 强制推送

git commit

命令 含义
git commit --amend 和上一次 commit 合并,并在该基础上编辑commit信息
git commit --amend --no-edit 和上一次 commit 合并, 不编辑信息
git commit -a -m "some modified" git add -A && git commit -m 'some modified'

git rebase

<base> 是可以使任何类型的提交引用(ID/分支名/标签/HEAD)

参考文档1

参考文档2

git reflog

Git 用引用日志这种机制来记录分支顶端的更新

注: 引用日志提供的安全网只对提交到本地仓库的更改有效,而且只有移动操作会被记录

其他操作

报错处理

上一篇 下一篇

猜你喜欢

热点阅读