我使用的是一个以前的开发人员提供的github存储库。
我是这个项目中唯一的编码者,所以我把这个项目转移到了我自己的github库中。
现在我想把soley交给我的回购协议。
不幸的是,我意识到我从来没有修改过我的.git/config,所以我仍然使用旧的repo。我只是把它修改成合适的url,当我输入:
$> git status
它会传回:
=> Working directory clean.
但是我知道这不是因为我已经提交了几次,所以我的本地盒子有不同的代码,然后它指向我的存储库。
我的问题是这样的。显然我已经完成了一半的过程。我需要重新派生来更新,然后我就可以了。或者我需要运行一个特殊的命令来让我的本地盒子知道它的'git status'命令正在瞄准一个新的repo来与它自己进行比较?同样,我是否遗漏了其他非常重要的东西:D?
谢谢大家。
3条答案
按热度按时间b4qexyjb1#
您可以使用
git remote
管理您的远程你也可以轻松地为当前的master分支(git 1.7及更高版本)执行setup a new upstream:
git status
的“nothing to commit (working directory clean)
“消息不会阻止您推送。变更原点后,您应该会看到:
这意味着你有一些提交要推到你的新原点。
注:“
git remote
“(man)rename无法在不获取refspec的情况下重命名远程对象,Git 2.39(Q4 2022)已对此进行了更正。参见Jeff King (
peff
)的commit 5a97b38(2022年9月22日)。(由Junio C Hamano --
gitster
--合并到commit 20a5dd6,2022年10月10日)我的天啊!在不提取refspec的情况下处理远程重命名
报告人:约翰·A·洛伊哈根
签署人:杰夫·金
当尝试重命名没有fetch refspec的远程时,我们返回一个错误:
为了让事情变得更加混乱,我们实际上通过
git_config_rename_section()
完成了配置修改。之后,我们尝试重写fetch refspec(用refs/remotes/foo代替origin)。
但是我们调用
git_config_set_multivar()
来删除现有的条目失败了,因为没有任何条目,它调用了die()。我们可以通过使用config调用的“gently”形式并检查错误代码来修复这个问题。
但还有一个更简单的解决办法:如果我们知道没有要重写refspecs,那么我们可以完全跳过这一部分。
h22fl7wq2#
git status
只显示了工作目录的状态,而不是整个仓库。看起来你只需要修改git push
和git pull
默认使用的remote。打开.git/config
,找到你的branch.<branch>
条目,然后修改它们,还有你的remote.<remote>
条目。例如,你的master
条目看起来像这样:只需将
remote
更改为引用 * 您的 *(分叉)遥控器。此外,您的远程条目可能如下所示:
您可以添加一个
push
条目,这样默认情况下会推送master
分支:zzlelutf3#
在此之前我手动修改了我的.git/config以包含我的新仓库URL。这就是为什么我不必像Von建议的那样重命名或添加任何源。
然后我就猜到了然后表演了
返回
然后在git状态下我得到了
我推了起源测试,我想我现在的目标。