Git 奇技淫巧
git 当上游发生squash时更新本地仓库的命令
git pull --rebase
git 创建空分支
git checkout --orphan branch_name
git 放弃本地所有修改
清除所有修改的文件
git checkout .
清除所有新建的文件及文件夹
git clean -df
撤销 git add 部分
git reset .
git squash
选择需要的commit往前位id
git rebase -i commitid
修改需要squash的提交并将根据需要其修改之前的pick
此为对照表称呼 简称 解释 p pick 使用提交 r reword 使用提交,但编辑提交消息 e edit 使用提交,但停止修改 s squash 使用提交,但融合到之前的提交中 f fixup 像 "squash",但丢弃这个提交的日志消息 x exec 使用 shell 运行命令(该行的其余部分) d drop 移除提交
git 重新拉取上游源码
设置上游分支
git remote add upstream git@github.com:username/Repo.git
获取上游代码
git fetch upstream
切换到upstream/main分支
git checkout -B target_Repo upstream/target_Repo
强制提交
git push -f origin target_Repo
git 以远程仓库覆盖本地
git reset --hard HEAD
git pull
或者
git fetch origin target_Repo
git reset --hard origin/target_Repo