【问题标题】:How to map local folder with existing git repository如何将本地文件夹与现有的 git 存储库映射
【发布时间】:2017-07-24 09:08:32
【问题描述】:

我想将我的工作文件夹映射到现有的 bitbucket 存储库

发生了什么

我有一个与 Bitbucket Repository 连接的工作文件夹。我在一个分支上工作。该分支已被推送并存在于 Bitcucket 远程。我在本地提交了一些更改,然后又提交了一个更改,SourceTree 挂起并且半小时没有响应。我不会责怪源代码树,它是我的机器。所以不得不重新启动我的机器。之后我无法推送任何更改并且收到文件损坏错误。然后,我删除了 .git 文件夹:(

问题

我正在寻找将本地文件夹映射到现有 git repo 的任何方法,但找不到任何东西。有没有可能?

B计划

我可以将现有存储库映射到新文件夹,然后将更改的文件夹复制到映射文件夹。不确定,这会奏效吗?它可能有效,但我正在寻找比这更好的任何其他解决方案或正确的方法来做到这一点

【问题讨论】:

标签: git repository bitbucket atlassian-sourcetree


【解决方案1】:

首先我只想指出,通过删除.git,您确实失去了在本地任何其他分支上的所有工作。话虽如此,只要您当前的文件夹结构是您想要的,就应该没问题。

这是你想要做的:

1) 使用命令git init 初始化一个新的.git 存储库。它应该告诉你你在 master 分支上。

2) 继续运行git checkout -b [name],其中[name] 是您之前所在分支的名称。一旦你的分支名称正确,你就可以运行git branch -D master

3) 使用git remote add origin [url] 将您的 git 存储库附加到远程,其中[url] 是您的远程 git 存储库的 URL。

4) 运行git fetch 获取远程历史记录

5) 使用git push --set-upstream origin [branch] 跟踪您当前的上游分支,其中[branch] 与步骤2 中的[name] 相同

执行这些步骤后,如果您遇到错误,可能是由于路径不同。如果是这种情况,请告诉我们,因为恐怕这是一个完全不同的问题。

【讨论】:

  • 感谢@Oxymoron Cool,这就像一个魅力。很高兴知道,您可以从 git cmd 执行此操作。有没有办法从源代码树中做到这一点?
  • 对不起@MJK 我主要使用命令行。对于 GUI 相关的问题,我不会有太多帮助。
  • @Oxymoron 在运行“git branch -D master”时。它会删除主分支吗?
  • @legacy 本地,是的。远程主分支将保持不变。所以当你以后git pull时,它会和其他人一起拉下来。
猜你喜欢
  • 2015-03-18
  • 2012-01-12
  • 2020-05-06
  • 2014-10-20
  • 1970-01-01
  • 2014-06-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多