【问题标题】:How do I fix the path of my local git repo after move?移动后如何修复本地 git repo 的路径?
【发布时间】:2013-01-06 01:59:30
【问题描述】:

移动后如何修复本地 git repo 的路径?

previous local location: /C/website
new local location: /C/Projects/website
remote location: git@bitbucket.org:username/website.git

我将我的 git 存储库从一个文件夹 /website 移动到另一个文件夹 /projects/website,现在我收到一个错误:

user@Thinkpad /C/Projects/website (master)
$ git push
fatal: 'C:/website' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

有什么方法可以解决这个问题而不必重新克隆项目? 我试过了:

$ git init
Reinitialized existing Git repository in c:/Projects/website/.git/

它什么也没做,当我尝试推送时,我又遇到了完全相同的错误。

编辑:

我跑了:git config remote.origin.url C:/Projects/website。现在,当我在更改文件后提交时,我得到以下回复:

user@Thinkpad /C/Projects/website (master)
$ git commit -m "added something"
[master e163ad9] added something
 0 files changed
 create mode 100644 something

user@Thinkpad /C/Projects/website (master)
$ git push
Everything up-to-date

【问题讨论】:

  • 好的,这真的很令人困惑。你的本地仓库是什么,远程仓库是什么?
  • Whitecat:你有没有偶然移动了目录和文件,但没有在终端模拟器中进入新目录? (错误消息有点暗示这一点)。 @fge:是的,我也很困惑……
  • 非常感谢各位的帮助。我的 git 知识现在扩展了,我正在前进!

标签: git move


【解决方案1】:

运行git config -e 并将远程地址更改为正确的远程位置。在您的情况下,这将是 url = git@bitbucket.org:username/website.git 此命令将打开以编辑存储库的 .git/config 文件。

(感谢@Richard 的命令)

快捷指令:

git config remote.origin.url git@bitbucket.org:username/website.git

【讨论】:

  • 我必须对每个子目录都这样做吗?
  • git config -e 同样打开文本编辑器;你可能想要git config remote.origin.url c:/projects/website
  • 现在 git 无法识别我的任何更改。
  • 请更准确地说:“不识别”是什么意思?编辑您的原始帖子,并举例说明您所看到的内容并解释您的期望。
【解决方案2】:

你必须将origin远程更新到新的url:

git remote set-url origin '/C/Projects/website'


如果您只是移动本地克隆,则无需执行任何操作来更新指向 bitbucket 或其他托管服务的指针。只需移动包含所有内容的文件夹(.git 目录是必不可少的)。

【讨论】:

  • 这并没有改变提交不起作用的效果。它仍然显示“一切都是最新的”
  • @Whitecat:如果我正确阅读了您的问题,您是在将存储库推向自身吗?当前工作目录是什么?
  • 我想将项目推送到我的存储库 'git@bitbucket.org:username/website.git'
  • @Whitecat:git remote set-url origin … (… 'git@bitbucket.org:username/website.git')
  • 最后一行有所不同。我确实移动了所有内容,包括 .git 文件夹。你能编辑你的答案来说明我实际上做了什么来解决它吗?我仍然对出了什么问题感到困惑。
【解决方案3】:

如果您使用 SmartGit,您可以通过这种方式更改存储库 url

打开 smartGit 并双击您的存储库并转到菜单 Remote>Properties.. 并将新的存储库路径设置为 path or url.

【讨论】:

  • 提问者想要移动他的本地存储库。我也是。您的说明对于更新远程存储库(在我的情况下也已移动)非常有效,但在本地它仍在检查到旧位置。
猜你喜欢
  • 2017-02-17
  • 2019-12-23
  • 1970-01-01
  • 2021-11-14
  • 2021-09-19
  • 1970-01-01
  • 2013-05-11
  • 1970-01-01
  • 2023-02-26
相关资源
最近更新 更多