一些 Git 操作记录
git 撤销提交
撤回最近一次的commit(撤销commit,不撤销git add)
git reset --soft HEAD~1
撤回最近一次的commit(撤销commit,撤销git add)
git reset --mixed HEAD~1
撤回最近一次的commit(撤销commit,撤销git add,还原改动的代码)
git reset --hard HEAD~1
如果不小心因 git reset --hard
删掉了 commit,可以通过以下方法找到:
git reflog show # 显示日志 git reset HEAD@{1} # 恢复 commit
git 不提交指定文件
执行命令将 filename
加入不提交队列
git update-index --assume-unchanged filename
执行命令将 filename
取消加入不提交队列
git update-index --no-assume-unchanged filename
Linux samba 分享目录 Windows 数据不一致的问题
执行命令忽略文件模式和行结束符
git config --global core.filemode false git config --global core.autocrlf true
error: object file … is empty
删除所有空白文件
cd .git
find . -type f -empty -delete -print
然后,打印出日志文件最后两行:
cd .. tail -n 1 .git/logs/refs/heads/master
然后,查看版本是否正常,xxxx 是第二个哈希:
git show xxxx
然后,归档:
git update-ref HEAD xxxx
检查一下:
git fsck