我很难理解这个;几乎所有我通过堆栈溢出发现并且博客似乎暗示使用--bool core.bare true
解决了这个问题,但我相信有些东西缺失。
示例:
"cd $HOME"
git init thing
cd existingrepo
git remote add origin "$HOME/thing"
git push origin master
这样做,我收到错误! [remote rejected] master -> master (branch is currently checked out)
我找到的答案基本上就是说,转到thing/
并运行
git config --bool core.bare true
当我这样做时,我确实可以推动,但是当我再次去thing/
时,它处于一种奇怪的状态 - 没有文件,并且我被告知了git-status
fatal: This operation must be run in a work tree
所以我反转了布尔操作
git config --bool core.bare true
git status
我发现有变化,但也有delete
个阶段
~/thing$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: .gitignore
deleted: registry.py
deleted: static/css/normalize.css
deleted: static/css/skeleton.css
我只能通过执行git reset --hard
来解决此问题,此时我的thing/
存储库与我的原始存储库匹配。
(我正在使用本地文件夹执行此操作,但在SSH上也会发生相同的行为,这是我的目标工作流程 - 基于SSH的基本存储库)
请问有人在这里赐教?
答案 0 :(得分:1)
你好,请你试着删除你的东西&#39; repo并用git init --bare thing.git
重新启动它。您不需要运行git config --bool core.bare true