最近有个项目git提交乱了,需要删除最近一次合并的节点,在本地没法做,只能去git远程服务端。
在git服务端操作时出错:
git checkout -f
fatal: This operation must be run in a work tree
查找原因说这是因为初始化时用的bare参数,不能在git服务端进行一般git操作,找到解决办法如下:
git config core.worktree /home/xxx/xxxx
git config core.bare false
git config receive.denycurrentbranch ignore
然后git reset --hard还是出错:
[git@OG2233-FM41-216 Texas.git]$ git reset --hard HEAD
fatal: unable to read tree 8cde32da80c4259703e876fd39319e735b32ad5c
没找出怎么处理,但是用--soft参数可以执行,先执行了,那些修改的文件还丢着没管。