如何将单个提交(不包括其子提交)推送到另一个存储库?

马哈茂德·扎尔特(Mahmoud Zalt)

说我有:

Commit 5 < HEAD
Commit 4
Commit 3
Commit 2
Commit 1

我想推送(提交5)到不同的仓库,而无需提交2,3,4。那可能吗?


我需要它的原因:

我有2个项目:

  • 入门项目(Starter)。
  • 当前正在(Starter)之上的(Project-1)上工作的项目。

在(Project-1)上工作时,我可能需要对(Starter)进行一些更改。

我目前在(Project-1)中有2个遥控器:

  • origin 指向私有(Project-1)存储库。
  • starter 指向开源(Starter)存储库。

通常,在(Project-1)中工作时,我会将所有提交都推送到origin master分支。

但是,当我对(Starter)进行更改时,我会单独提交它们,然后尝试将该特定提交推Commit 5送到(Starter)存储库。一切正常!使用git push starter c78d92e32ec1a:master

但是问题是当我推送时,Commit 5它还会推送所有先前的提交(2,3,4),在我的情况下,这些提交与(Project-1)有关。

从逻辑上讲,即使不是最后一次提交,也只能推送特定的提交。Commit 4与(Starter)repo合并的示例

马哈茂德·扎尔特(Mahmoud Zalt)

天哪,它在工作

  • 选择以下选项之一:
    • 选项1:从头开始
      • 克隆启动器-将原始远程设置为指向启动器存储库URL。
    • 选项2:已经拥有该项目:
  • 添加启动程序远程(git remote添加启动程序[email protected]:username / starter.git)
  • 查看两个遥控器(git remote -v)
  • composer install“被git忽略,因此您在切换分支时将看到相同的文件,将读取composer.json并安装所需的文件”
  • 添加.env文件“被git忽略,因此在切换分支时您将看到相同的文件”
  • 签出一个新的“入门”分支(git checkout -b starter)
    • 查看两个分支(git branch -v)
    • 从入门分支中获取所有内容(git fetch --all)
    • 使用入门者仓库覆盖“入门者”分支“在starer分支中具有入门者存储库的确切副本”(git reset --hard starter / master)
    • 确保入门者分支具有入门者存储库中的最新更改(git pull入门者母版)
  • 检出master分支(git checkout master)

    • 在master分支上正常工作

      • 处理项目代码并提交。
        • 随时将您的提交推送到项目的远程存储库(git push origin master)或任何其他分支
      • 处理启动程序代码,并提交“可重用且有益于启动程序的代码部分” {注意不要在启动程序提交中包含项目代码}

        • 准备看魔术!

          • 检出入门分支(git checkout starter)
          • 从其主存储库(git pull starter master)更新启动程序
          • 樱桃从入门者那里挑选您的提交,“当您在master分支上时,从(git日志)查找提交ID”(git cherry-pick 98a3d7g4h2dfs)
          • 看到提交都很好并且可以推送(git log)
          • 将启动程序推送到其存储库中的新分支上(git push starter starter:feature-branch-name)“重要的是推送到分支,而不是直接掌握”
          • 从github创建一个PR并在需要时将其合并
          • 如果您在上一步中进行了合并,则请拉合并提交(git pull starter master)
    • (可选)使用以下任一选项将启动器与项目合并:
      • 选项1:合并并保留项目更改(git merge -X我们的启动器)
      • 选项2:使用入门工具合并和覆盖您的项目(git merge -X他们的入门工具)
      • 选项3:手动合并和解决冲突(git merge starter)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

仅将一些提交推送到另一个git存储库

来自分类Dev

如何将子模块更改推送到另一个存储库

来自分类Dev

如何将提交复制到另一个git存储库

来自分类Dev

Git-如何将本地存储库提交到另一个本地存储库的子文件夹?

来自分类Dev

如何将一个提交从一个远程分支推送到另一远程分支

来自分类Dev

Git:将提交从存储库提交到另一个存储库

来自分类Dev

如何将提交从Gerrit推送到远程存储库?

来自分类Dev

如何:在推送/合并到 master 时,将特定文件提交/推送到另一个项目

来自分类Dev

Github:如何将一个存储库移动到另一个存储库以保留我的提交历史?

来自分类Dev

Git:如何从另一个存储库导入提交并取消提交?

来自分类Dev

如何将我的提交挑选到另一个git存储库中?

来自分类Dev

将代码从存储库的一个分支推送到另一个存储库的另一个分支

来自分类Dev

Git:如何将一个提交融合到另一个提交中?

来自分类Dev

将更改推送到源(上游)后,如何将其推送到另一个遥控器?

来自分类Dev

如何将数组推送到另一个数组内的对象中?

来自分类Dev

如何将一个存储库中的单个git commit应用于另一个存储库?

来自分类Dev

从另一个存储库分支克隆后,推送到私有存储库

来自分类Dev

如何将1个特定的提交复制到另一个分支?

来自分类Dev

如何从另一个具有不同历史记录的存储库中重新提交提交?

来自分类Dev

如何将提交推送到由气隙分隔的远程Git存储库?

来自分类Dev

当提交推送到另一个项目时触发项目的构建

来自分类Dev

将更改从一个客户端推送到远程存储库后,如何将它们放入另一个客户端的工作区中?

来自分类Dev

如何将Git存储库放在另一个存储库中?

来自分类Dev

如何将目录的所有内容(不包括父目录)移动到另一个目录 Groovy

来自分类Dev

Next.js,如何将表单提交到另一个页面?

来自分类Dev

如何将特定的提交复制到另一个分支?

来自分类Dev

如何将另一个远程分支连接到提交树

来自分类Dev

从一个裸存储库推送到另一个裸存储库

来自分类Dev

NestJs:如何将一个存储库导入另一个存储库?

Related 相关文章

  1. 1

    仅将一些提交推送到另一个git存储库

  2. 2

    如何将子模块更改推送到另一个存储库

  3. 3

    如何将提交复制到另一个git存储库

  4. 4

    Git-如何将本地存储库提交到另一个本地存储库的子文件夹?

  5. 5

    如何将一个提交从一个远程分支推送到另一远程分支

  6. 6

    Git:将提交从存储库提交到另一个存储库

  7. 7

    如何将提交从Gerrit推送到远程存储库?

  8. 8

    如何:在推送/合并到 master 时,将特定文件提交/推送到另一个项目

  9. 9

    Github:如何将一个存储库移动到另一个存储库以保留我的提交历史?

  10. 10

    Git:如何从另一个存储库导入提交并取消提交?

  11. 11

    如何将我的提交挑选到另一个git存储库中?

  12. 12

    将代码从存储库的一个分支推送到另一个存储库的另一个分支

  13. 13

    Git:如何将一个提交融合到另一个提交中?

  14. 14

    将更改推送到源(上游)后,如何将其推送到另一个遥控器?

  15. 15

    如何将数组推送到另一个数组内的对象中?

  16. 16

    如何将一个存储库中的单个git commit应用于另一个存储库?

  17. 17

    从另一个存储库分支克隆后,推送到私有存储库

  18. 18

    如何将1个特定的提交复制到另一个分支?

  19. 19

    如何从另一个具有不同历史记录的存储库中重新提交提交?

  20. 20

    如何将提交推送到由气隙分隔的远程Git存储库?

  21. 21

    当提交推送到另一个项目时触发项目的构建

  22. 22

    将更改从一个客户端推送到远程存储库后,如何将它们放入另一个客户端的工作区中?

  23. 23

    如何将Git存储库放在另一个存储库中?

  24. 24

    如何将目录的所有内容(不包括父目录)移动到另一个目录 Groovy

  25. 25

    Next.js,如何将表单提交到另一个页面?

  26. 26

    如何将特定的提交复制到另一个分支?

  27. 27

    如何将另一个远程分支连接到提交树

  28. 28

    从一个裸存储库推送到另一个裸存储库

  29. 29

    NestJs:如何将一个存储库导入另一个存储库?

热门标签

归档