git 远程仓库重命名了,本地如何提交

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git 远程仓库重命名了,本地如何提交相关的知识,希望对你有一定的参考价值。

参考技术A https://www.cnblogs.com/anliux/p/10802615.html

1.本仓库路径下执行:git remote -v,显示只有一个:origin

2在本地仓库删除远程仓库

继续执行:git remove rm origin

3. 本地添加远程仓库地址

git add README.md

git commit -m "first commit"

git remote add origin  http://XX/test.git

4. 提交

git push -u origin master

在本地和远程重命名 Git 分支? [复制]

【中文标题】在本地和远程重命名 Git 分支? [复制]【英文标题】:Rename a Git branch locally and remotely? [duplicate] 【发布时间】:2016-08-28 06:01:27 【问题描述】:

有没有办法在本地重命名 Git 分支并将其推送到远程分支,即使已经有很多提交推送到远程分支?

或者,是否需要新建一个本地分支,删除旧的本地分支,然后对远程仓库重复操作?

【问题讨论】:

【参考方案1】:

是的,

存在 move 功能以在本地重命名分支

git branch --move <old_name> <new_name>

但要推送它,你必须删除旧的并推送新的

git checkout <new_name>
git push origin [--set-upstream] <new_name>
git push origin --delete <old_name>

--set-upstream是可选的,它配置新的本地分支来跟踪推送的分支

您可以使用以下简写:

在本地移动(--move):

  git branch -m <old_name> <new_name>

推送新分支(--set-upstream,可选):

  git push origin [-u] <new_name>

删除(--delete):

  git push origin -d <old_name>

注意。

感谢torek的评论:

顺便说一句,值得一提的是你应该

    通知共享上游的其他用户您将执行此操作,并且 按所示顺序执行此操作(设置新名称,然后删除旧名称)。

#1 的原因是那些用户需要调整。

#2 的原因主要是为了提高效率:它避免了将对象重新复制到上游存储库,该存储库在删除分支时会丢弃提交(大多数裸存储库都这样做,而大多数接受推送的存储库都是裸存储)

【讨论】:

非常轻微。我相信您会混淆使用远程速记 branch -D 在本地删除分支。但是在最新的 git(git 版本 2.14.+)中,没有这样的-D 选项作为--delete 的简写,而是小写的-d。所以应该是git push origin -d &lt;old_name&gt; 如果你有一个带有 &lt;old_name&gt; 的 Open PR(例如在 GitHub 上),当你删除远程分支时它会关闭,所以你需要创建一个新的,因为没有更改 PR 所基于的分支的方式(当时)(您只能更改目标)。 删除远程分支的更简洁的方法是git push origin :[old_branch_name] 对于某些遥控器(例如Bitbucket),在最后一步(--delete)之前,您需要将分支“取消分配”为repo的“默认”分支

以上是关于git 远程仓库重命名了,本地如何提交的主要内容,如果未能解决你的问题,请参考以下文章

在本地和远程重命名 Git 分支? [复制]

如何将本地代码提交到多个远程仓库

git - 远程仓库的删除和重命名

git的基本使用

Git(码云)如何把本地仓库提交到远程仓库

Git通过Remote指令对远程仓库进行添加/删除/重命名