当两个结构相同的 git 仓库从来没有任何共同的历史记录时,它们可以合并吗?

2023-11-25

我有两个小的 git 存储库。这些项目都是从不同的点开始的,但最终收敛到一个非常相似的项目(相同的文件名、文件夹结构等)。一个不是另一个的分支,但一个可以被认为是另一个的演变。

如果我可以将两者合并,那就太好了repo2是的延续repo1。这是否可能,同时添加历史repo2到最后repo1's?


You can 将一个放入另一个中:

$ cd project1
$ git config remote.project2.url /path/to/project2
$ git config remote.project2.fetch 'refs/heads/*:refs/project2/*'
$ git fetch project

这将为您提供两个(或更多)分支,其中包含项目 1 和项目 2 的历史记录。它们仍然是完全独立的,只是使用相同的对象存储。

然后(未经测试),你可以使用移植文件 (.git/info/grafts),您可以在其中覆盖提交的父级(例如,项目 2 的第一个提交的父级为项目 1 的最新版本)

As Dustin在评论中说,通过将项目 2 的提交重放到项目 1 上,可以进行变基以“使其永久化”。


你在这个“在项目中使用 Git(分叉)》博客文章,特别是“如何拉朋友、影响人”部分。再次强调:

git checkout two_point_ooh
git remote add strelau git://gitorious.org/ruby-on-rails-tmbundle/mainline.git
git checkout -b strelau/two_point_ooh
git pull strelau two_point_ooh

是一个类似的过程,但是对于分叉的存储库(这不完全是您的情况)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当两个结构相同的 git 仓库从来没有任何共同的历史记录时,它们可以合并吗? 的相关文章

  • 由于不存在大文件而导致 git Push 错误

    当尝试推送到 git 时 我不断得到相同的结果 Counting objects 78 done Delta compression using up to 4 threads Compressing objects 100 67 67 d
  • “git add”返回“致命:外部存储库”错误

    我刚刚进入 git 的奇妙世界 我必须提交我对程序所做的一系列更改 位于名为的目录中 var www myapp 我创建了一个新目录 home mylogin gitclone 从这个目录中 我做了一个git clone针对公共回购 我能够
  • git for-each-ref - 按年龄过滤结果

    我正在使用以下命令here https stackoverflow com a 39251131 5812876 git for each ref format color cyan authordate format m d Y I M
  • 为什么在 Eclipse 中对 Egit 管理的项目禁用合并工具?

    根据Egit 用户指南 http wiki eclipse org EGit User Guide Using Merge Tool 要使用合并工具 应右键单击存在合并冲突的资源 然后选择Team gt 合并工具 但是 当我执行此操作时 合
  • 如何标记单个文件?或如何下载特定文件? - 胃肠道

    我想向文件添加标签以轻松下载该文件而不是整个分支 如何下载GIT中的特定文件 我不知道有什么方法可以标记特定文件git 对于第二个问题 如何下载特定文件git 仅当您的意思是 同时下载 时 以下内容才有效in a git存储库 这就是我理解
  • git Branch -d :致命 - 无法查找 HEAD 的提交对象

    假设我在一个裸存储库 远程 中 如果我尝试使用以下命令删除分支git branch d
  • neo4j cypher更新现有节点或创建新节点

    我有一个包含大约 900 万个节点和 1200 万个关系的图 对于图中的每个节点 每个节点都有一个属性子集 这些属性通过标签形成节点的唯一标识 该图正在通过各种数据源进行更新 这些数据源会增加图中的现有节点 或者在节点不存在时创建新节点 我
  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • 无法从我的电脑上使用 traefik 后面的 gitlab 进行 git 克隆

    这是我的 gitlab 和 traefik 配置 version 3 7 services gitlab web image gitlab gitlab ce latest restart always hostname gitlab ro
  • 从 github 中删除子项目提交

    我有两个存储库A and B 我错误地在我的机器上将仓库 B 克隆到了 A 内 我从存储库 B 中删除了所有代码 但是当我在源上从 A 推送并合并代码时 它还显示了子项目提交B在 Github 仓库上 我想从我的 master 上删除子项目
  • Git 扩展 - 无法在 Windows 上推送到网络驱动器中的 git bare 存储库

    我正在 Windows 上学习 git 我已经安装了 Git 扩展 版本 2 47 3 并使用了它 我在我的 C 单元中创建了一个裸存储库 作为中央存储库 并在硬盘中的其他任何位置创建了个人存储库 我对硬盘中的这两个存储库进行提交 推送和拉
  • 是否可以在 git 存储库之外添加和提交文件?

    我们的文本文件分布在系统的各个角落 我们计划将这些文件中所做的所有修改添加到 git 存储库中 每次对这些文件进行修改都是由脚本进行的 因此 我们计划向该脚本添加新命令 以将文件添加到 git 存储库 但是 这些修改是同时进行的 我们可以为
  • 合并 2 个大型 CSS 文件的有效方法

    我正在寻找一个可以合并 2 个大型 CSS 文件的工具 到目前为止我尝试过的所有方法 例如CSSMerge 都没有成功 其中一些只是随机删除属性 其他人则因 webkit 和 moz 等非标准属性而窒息 并给我错误 我还需要保留每条规则大小
  • Git:压缩 master 上提交的最简单方法[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 git 将最后 X 次提交压缩在一起 https stackoverflow com questions 5189560 how can i squash my last x commits
  • git 如何查找分支源自的提交哈希

    假设我从主分支分支到主题分支 然后在主题分支上进行了一些提交 是否有命令告诉我主题分支源自的主分支上的提交哈希 理想情况下 我不必知道我做了多少次提交 试图避免 HEAD 5 我已经用谷歌搜索过 但似乎无法找到答案 谢谢 use git m
  • 如何关闭分支而不将其从 git 的历史记录中删除?

    我想提交并关闭其分支 而不将其从历史中删除 有了水银我会commit close branch then update转到上一个 然后继续工作 有了 git 我很困惑 没有与 Git 中关闭分支完全相同的方法 因为 Git 分支比 Merc
  • 执行 git Push 时出现“diff.renamelimit 变量”警告

    我将本地提交推送到远程 git 服务器并收到以下警告消息 remote warning only found copies from modified paths due to too many files remote warning y
  • 为什么 git-svn 应该积极搜索旧历史?

    当我运行 git svn clone s 时发生了一些奇怪的事情 尽管以下信息告诉我们不要惊慌 但我想知道为什么会出现这种 svn 错误 为什么这个路径不存在 是被别人删除了吗 如果是 为什么 git svn 应该积极搜索旧历史记录 Ini
  • 如何让 Gitlab 运行程序在成功构建时将代码合并到分支中

    嗯 标题几乎是不言自明的 总之 如果构建成功 我希望将一个分支 即开发 合并到另一个分支 即生产 我尝试了 jakub kania 解决方案 但我总是得到id rsa invalid format 我认为 gitlab 秘密变量以某种方式被
  • Jenkins GIT 包含从未构建过的区域

    我正在尝试使用包含区域在 Jenkins 中构建我的工作 但每当选中此选项时 民意调查结果总是说未检测到任何更改 我尝试了许多不同的路径 以及使用工作区进行 不进行强制轮询 结果是轮询从未检测到任何更改 但一旦我删除这些选项 它们就会在下一

随机推荐

  • 在纯 Perl 中从另一个 HTTP 资源进行流传输的最简单方法是什么?

    在 Perl 中从另一个 HTTP 资源进行流式传输的最简单方法 无需打开 shell 进行卷曲并从标准输入读取 是什么 我在这里假设我正在读取的 HTTP 资源是一个潜在的无限流 或者只是非常非常长 好的旧 LWP 允许您将结果作为流进行
  • graphviz - 固定节点位置

    我有一个由 neato 处理的图表 我正在向它添加新的边 但是 我不希望旧节点被移动 我希望 neato 计算新节点的新位置 并将旧节点保留在同一位置 strict graph node0 pos 1 2 node1 pos 2 3 我添加
  • 将方法参数传递给函数

    我很好奇这在 Go 中是否可行 我有一个具有多种方法的类型 是否可以有一个函数接受方法参数 然后为类型调用它 这是我想要的一个小例子 package main import fmt type Foo int func f Foo A fmt
  • Guice 和 Scala - 泛型依赖注入

    我正在尝试使用 Guice 创建通用特征的绑定 看看如何trait被定义为 trait Repository T See the trait执行 class DomainRepository extends Repository Domai
  • ES6 - 使用 getter 导出模块

    想要导出一个模块 该模块从某个全局对象中获取模块的定义 它是这样的 export get DynamicModule return globalFluxStorage state property property property pro
  • 如何在pytest中测试类的继承方法

    house py class House def is habitable self return True def is on the ground self return True conftest py import pytest f
  • 通过地址/指针访问对象

    我可以通过内存地址或指针访问当前 R 会话中创建的 data table 对象吗 library data table DT lt data table a 1 10 b letters 1 10 address DT 1 0x6bf9b9
  • PDO::ERRMODE_EXCEPTION 不会抑制警告

    http php net manual en pdo error handling php PDO ERRMODE WARNING 除了设置错误代码之外 PDO 还会发出传统的 E WARNING 消息 如果您只想在不中断应用程序流程的情况
  • 通用所有控制方法

    无法想到更好的标题 所以抱歉 我正在尝试转换这个方法 它将检索表单的所有子控件 作为扩展方法并接受接口作为输入 到目前为止我已经达到了 public IEnumerable
  • 关闭 QCoreApplication 之前进行清理

    我有一个基于控制台的QCoreApplication它具有计时器并进行套接字通信 并且还使用锁定的互斥体 当我手动关闭应用程序时 它会给出错误 指出某些互斥锁已锁定并且已超时 当用户关闭控制台应用程序时 有什么方法可以在控制台应用程序中进行
  • 无法将“Newtonsoft.Json.Linq.JObject”类型的对象转换为“System.Runtime.Serialization.ISafeSerializationData”类型

    我在尝试反序列化 Web api 调用时遇到以下异常 该消息晦涩难懂 因此我无法理解发生了什么 此转换在其他情况下有效 不确定这里出了什么问题 例外 InnerException System Reflection TargetInvoca
  • 将一些 HTML 附加到 HEAD 标记中?

    我想使用 javascript 在 html 页面中的 head 标签中添加一些样式 var h document getElementsByTagName head item 0 h innerHTML 但是当我在 IE8 中运行此代码时
  • 是否可以在运行时生成并运行 TemplateHaskell 生成的代码?

    是否可以在运行时生成并运行 TemplateHaskell 生成的代码 在运行时使用 C 我可以 创建函数的源代码 调用 gcc 将其编译为 so linux 或使用 llvm 等 加载 so 和 调用该函数 Template Haskel
  • 关闭应用程序并通知渲染器进程

    我有一个电子应用程序 需要在用户关闭时保存一些数据 例如 在用户单击 关闭 按钮后 数据在渲染器进程中可用 因此应在应用程序终止之前得到通知 The 浏览器窗口的 Electron API提到一个close方法 但似乎这是由主进程完成的 而
  • 对 Express 上的某些请求禁用 csrf 验证

    我正在使用 Express 框架使用 Node js 编写一个小型 Web 应用程序 我正在使用 csrf 中间件 但我想针对某些请求禁用它 这就是我将其包含在我的应用程序中的方式 var express require express v
  • C语言中如何声明全局变量?

    我开始使用 C 我在定义全局变量时遇到问题 例如 platformID用于install c 我声明于main c但我仍然收到错误 install c 64 error platformID undeclared first use in
  • 如何在 Clion 中显示彩色控制台输出

    我正在尝试使用 Clion 编写一个 C 应用程序 该应用程序利用使用 ASCII 序列的彩色控制台输出 当我在 Clion 中运行该程序时 未显示颜色 但是当我在终端中运行该程序时 我可以看到颜色 我必须启用隐藏选项才能使其发挥作用吗 编
  • 将 ruby​​ 源代码从旧样式转换为新样式哈希

    有人知道一个转换器 它采用 ruby 源文件列表并可靠地将所有旧样式 hash rocket 哈希替换为新样式 ruby 1 9 哈希语法吗 Rubocop是一个静态代码分析器 可以根据 Ruby 风格指南的许多建议来评估您的代码 它有一个
  • jquery 不能与 jsdom/enzyme 一起使用

    我有一个带有以下组件的最小测试反应应用程序 import React from react import from jquery export default class App extends React Component compon
  • 当两个结构相同的 git 仓库从来没有任何共同的历史记录时,它们可以合并吗?

    我有两个小的 git 存储库 这些项目都是从不同的点开始的 但最终收敛到一个非常相似的项目 相同的文件名 文件夹结构等 一个不是另一个的分支 但一个可以被认为是另一个的演变 如果我可以将两者合并 那就太好了repo2是的延续repo1 这是