1.git回退版本
回退到上一次commit
git reset --hard Head^
或者 git reset --hard commitID
2.git 获取patch,并合并到另一个分支
it format-patch commitId -1
通过该命令将会产生一个*.patch的文件,可以将这个文件打到其他的分支
如果不加-1的话将打出的patch文件将不会包含该commit
git apply --stat *.patch 查看该patch
git apply --check *.patch 检查该patch是否可以进行存在冲突
git apply *.patch
git format-patch -1 c85e5f1e3e8cff49029b5e4d925fd47ba9bd7788
git apply 0001-Use-Android-V-new-Add-interface-WifiP2pListener.patch
3.git放弃修改
1.本地修改了但并没有通过add加入暂存区
git checkout .
git checkout filename
2.有一些untrack的文件,不想跟踪了
git clean -nfd
3.已经add但还没有commit
git reset HEAD .
git reset HEAD filename
4.已经commit了想撤销
git reset commitId
如果想彻底删除
git reset --hard commit
4.rebase 相关操作
git fetch origin:
这个命令会从远程仓库 origin 中获取最新的提交和数据,但不会合并到你的本地分支中。它会将远程仓库的最新内容下载到本地
git rebase origin/master:
这个命令会将当前分支(假设为 master 分支)与远程仓库 origin 的 master 分支进行变基操作。即将当前分支的提交依次应用到 origin/master 分支
git rebase --continue:
如果在 rebase 过程中出现冲突,需要手动解决冲突后,使用 git rebase --continue 命令来继续 rebase 操作。这个命令告诉 Git 继续应用之前的补丁,直到 rebase 操作完成