在过滤分支之后将每个人重新基于更改的 git 历史记录

2024-01-01

我们的 git 存储库历史上有一堆不再需要的大文件。我想使用 Pro Git 中解释的过滤分支技术删除它们:

http://git-scm.com/book/en/v2/Git-Internals-Maintenance-and-Data-Recovery http://git-scm.com/book/en/v2/Git-Internals-Maintenance-and-Data-Recovery

然后我会使用git push --force all将其发送到我们的共享存储库,如下所述:

更新开发团队,重写 Git 存储库历史记录,删除大文件 https://stackoverflow.com/questions/4444091/git-filter-branch-to-delete-large-file

但。 Pro Git 说我需要让每个人都 rebase,因为我正在改变历史。我们只很少使用变基,通常只是作为合并的替代方法。我可以让每个人都重新克隆,但这是最后的手段;一些开发人员在当地设有分支机构,其中包含他们想要保留的更改。

那么:每个人到底需要在我们的本地存储库中做什么才能重新建立到新更改的共享存储库?我们是否必须为每个跟踪分支执行一次?如果您想提供分步说明(如果您愿意的话,我会很高兴),我们的存储库被称为 origin,主分支是 master。


关键是每个开发人员都不要失去他们最初的参考master直到他们完成变基之后。为此,让他们做fetch (nota pull)在强制推送之后,然后对于每个本地分支,执行以下操作:

git rebase --onto origin/master master <local_branch>

完成后,他们就可以检查他们的master并通过以下方式更新:

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

在过滤分支之后将每个人重新基于更改的 git 历史记录 的相关文章

  • 为什么我的存储库的 github 页面中没有出现问题选项卡?

    我想在 github 存储库中创建问题来纠正存储库中的技术债务 我看不到问题选项卡 对于其他存储库 问题选项卡显示在拉取请求选项卡下方 如何为我的存储库启用问题选项卡 您必须先启用问题 您可以通过点击来做到这一点Settings并启用 问题
  • 将代码从没有权限的存储库推送到私有存储库?

    我有一个来自外部存储库 我们称之为 ExRepo 的文件夹 我没有任何推送权限 我有一个名为 MyOwnRepo 的个人存储库 如何获取 ExRepo 并将其合并到 MyOwnRepo 中 我已经尝试过这个 C Users
  • 无法快速删除 Git 中的许多文件

    我删除了 Git 分支中的 777 个文件新功能 by rm example 我愿意承诺 Git 要求我手动删除每个已删除的文件 git rm file 对于所有名称不相似的 777 个文件 编写上述命令将花费大量时间 如何删除我的 Git
  • Mac 到 EC2 - 源代码控制三角问题 - git?同步?啥?

    我有一个日常 EC2 实例 事实上 请注意那些更改IP每次重新启动它们时 都会出现另一个问题 实例上有一个文件夹 我在文件夹 mysql express 等 中有一个简单的 比如说 节点项目 比方说 这是一个网站 那么在我的 Mac 上进行
  • 将存储库从 Github 移至 Gitlab

    有没有办法将整个存储库从 Github 移动到 GitLab 对于代码本身来说 只需在 GitLab 上创建一个新的存储库并推送到它即可 Wiki 页面位于 Github 上的单独分支中 并通过 Git 机制进行管理 据我所知 GitLab
  • Git 只获取一个目录

    我有一名开发人员负责一个文件夹 另一名开发人员负责另一个文件夹 我想使用特定文件夹更新产品 我正在寻找类似的命令 cd myproject git pull myfolder 并期望只有 myfolder 会被更新 是否可以 好吧 我重新表
  • 如何更新我的裸存储库?

    我创建了一个裸存储库来发布我的存储库 但我不知道如何使用主存储库的当前状态更新裸存储库 如果您想复制主存储库中的所有对象 请在主存储库中执行此操作 git push all
  • Git 查找第一个非本地提交

    有关的 列出尚未推送到源的 Git 提交 https stackoverflow com questions 3080509 list git commits not pushed to the origin yet git rev par
  • 竹子 - 构建我的拉取请求

    当拉取请求进入 git 时 我试图触发竹子中的构建 我可以将 webhook 信息发送到竹子 但它不是构建适当的 sha 标记的签入 而是构建 主 分支 这是否需要对竹子进行一些自定义 git 设置 到目前为止我还没有看到任何简单的事情 在
  • 我是否需要在裸仓库上运行 git gc ?

    man git gc http www kernel org pub software scm git docs git gc html其中没有明显的答案 而且我在谷歌上也没有任何运气 尽管我可能只是使用了错误的搜索词 我明白你应该偶尔跑步
  • git 可以忽略特定行吗?

    我在手机的本机浏览器上测试时使用 git 同步到phonegap 因此我有以下行 var isPhoneGap false 显然 我在构建时更改了这一点 但是有什么方法可以设置 git 来忽略这一行 或者我是否必须将其放入自己的文件中并以这
  • git 如何在不同分支中保持不同的配置文件?

    请允许我先表达一下我的尝试 假设我有两个分支 Alice1 和 Alice2 Alice1 有自己的服务器 Alice2 也有自己的服务器 我希望能够签出 Alice1 编写我的代码 然后通过使用保存在 URL 配置文件中的 URL 直接推
  • 如何使用最近的标签来装饰 git 日志?

    git log decorate将相关引用的信息添加到日志输出中 commit 9e895ace5d82df8929b16f58e9f515f6d54ab82d tag v3 10 rc7 Author Linus Torvalds lt
  • 如何使用 github 托管外部 CSS 文件?

    我将 css 上传到 github 然后转到网站上的文件并单击 raw 选项 我尝试将其添加到网页中 但 chrome 给出以下错误 资源解释为样式表 但使用 MIME 类型 text plain 进行传输 https raw github
  • 如何将 GitHub PR 的代码与其他分支的 PR 代码分开?

    我正在开发一个项目并解决问题 我正在为每个拉取请求 PR 创建一个不同的分支 上次我用他们的 PR 创建了两个不同的分支并解决了这两个问题 现在的问题是 我的两个拉取请求都与我在不同分支上推送的代码搞乱了 我借助以下命令在 git bash
  • 无法在 Eclipse 中运行从 Git 导入的项目

    我的 Eclipse 工作区中有一个来自 Github 的项目 通过 File gt Import gt Projects from GIT 但是 我无法运行该示例 因为 运行方式 下的唯一选项是 运行配置 转到 运行配置 后 我单击 浏览
  • 如何对私有 jelastic 环境进行版本控制

    为了跟踪 Jelastic 托管环境的配置 我想在 git 存储库中对其进行版本控制 该存储库应该是私有的 并包含多个具有不同版本的不同分支 例如master abc123 v1 1 我的第一次尝试是创建一个私有 github 存储库 其中
  • Git 存储库损坏(标头检查不正确;松散对象已损坏)

    昨天晚上我在写提交消息时遇到了电源故障 当我重新启动机器时 我无法完成提交 我跑了git reset 添加回更改的文件 然后再次尝试 得到 git commit error inflate data stream error incorre
  • 读取 git 的最后一次提交和提交号

    在使用Git源代码的maven项目中 每当我使用maven编译构建时 是否可以读取git的最后一次提交和提交号 我想使用该提交编号来找到最后一次提交 这是假设您想要读取该信息 然后将其存储在属性文件中 基于https github com
  • “无法同时更新路径和切换到分支”

    我有时会使用checkout b创建新分支的选项 同时将其签出并在一个命令中设置跟踪 在新环境中 我收到此错误 git checkout b test track origin master fatal Cannot update path

随机推荐

  • 寻找一个与 C# 一起使用的免费 SMS 网关 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我在 ASP NET 2 0 中开发了一个网站 我想向每个注册到我的网站的人发送一条短信 我想用 C
  • Go 真的能比 Python 快那么多吗?

    我认为我可能错误地实施了这一点 因为结果没有意义 我有一个 Go 程序 计数到 1000000000 package main import fmt func main for i 0 i lt 1000000000 i fmt Print
  • DataGridView 行添加事件

    我正在使用 DataGridView 并将列表绑定到数据源 我已经有了正确的列 并且准确地映射了字段 我想做的是处理一种RowAdded or RowDataBound 就像在 aspx GridView 中一样 事件 我发现的唯一事件是R
  • 我是否必须创建新的可见元素才能遵守 Google 的 Microdata Schema.org 要求?

    我已将 Schema org Microdata 属性添加到我网站上的列表组件中 This is one item in my list div span The Awesome Web App 01 span span span span
  • 更改文件的单个字符

    我需要更改文件中的单个字符 我不想使用像这样的辅助文件 伪代码 read theFile change theFile write theFile2 erase theFile rename theFile2 theFile 因为通过这种方
  • 通过 Javascript 查找何时在 EPUB FXL 中查看页面

    是否可以找出何时使用 Javascript 查看 EPUB 固定布局的页面 有 DOMContentLoaded 事件 但相邻页面在 iBooks 中预加载时也会触发此事件 导致动画或声音在页面可见之前启动 不 这不对 这是iBooks的一
  • 如何将正则表达式的匹配分配给变量?

    我有一个文本文件 其中包含各种条目 每个条目都以包含所有星号的行结束 我想使用 shell 命令来解析该文件并将每个条目分配给一个变量 我怎样才能做到这一点 这是一个示例输入文件 Field1 Lorem ipsum Data to mat
  • 将 VARCHAR 时间戳转换为 TIMESTAMP?

    我在 MySQL 数据库中有一个格式为 17 16 28 Sep 13 2011 PDT 的时间戳 数据库中字段的类型是VARCHAR 我想将这个 VARCHAR 转换为 MySQL 中 TIMESTAMP 类型的字段 我尝试了几个本网站其
  • 如何让 slc 命令在 Ubuntu 上运行?

    我已经使用安装了 Strongloopnpm install g strongloop在我的 Ubuntu 14 04 服务器上 这slc命令不起作用 它说 The program slc is currently not installe
  • 使用实体框架更新外键

    我再次遇到了实体框架的问题唷 我正在尝试使用外键更新表 我在插入时遇到问题 但通过编辑 edmx 文件解决了这个问题 我使用以下代码来更新与角色表具有外部关系的用户表 Domain Data Role role db Role FirstO
  • 使用selenium打开的Chrome页面仍然是空白

    我正在尝试保存网页的屏幕截图 为此我尝试使用 Selenium 问题是 一旦打开网页 URL 中的 data 就会保持空白 这是我的代码 from selenium import webdriver options webdriver Ch
  • 如何以相反的顺序打印文件中的行

    我正在尝试以相反的顺序打印文件 我正在使用数组来保存每行数据 到目前为止 我能够按正常顺序打印每一行 index 是我指的行数 FuncIndex 是同一件事 但已在函数中再次声明 file fopen quotes data r whil
  • 更改 spring-boot 中默认的 Mongo 连接池大小

    我想更改java mongodb驱动程序提供的连接池的默认大小根据 mongo 文档 这是 100 下面是我用来自定义连接池大小的mongo客户端bean 参考这个问题 https stackoverflow com questions 2
  • 解释这个 C 程序的输出

    在以下位置找到此代码C 谜题 http www gowrikumar com c index php include
  • Zend 打开 Zend/Application.php 失败

    好的 我对 Zend 还比较陌生 我创建了一个新的应用程序并开始构建基于的身份验证系统a guide http akrabat com zend auth tutorial 但是 服务器正在排除内部服务器错误 在检查 PHP 错误日志时 我
  • 如何使用System.Net.Mail设置退回邮件地址?

    我正在尝试实施可变信封返回路径 VERP http en wikipedia org wiki Variable envelope return path管理电子邮件地址的方法 即 当我发送的电子邮件被退回时 我希望将其发送到特定的电子邮件
  • 如何在我的 ejs 文件中包含 bootstrap 文件?

    因此 我已经使用 npm bootstrap 3 安装了 bootstrap 但是当我尝试在我的应用程序中包含来自 node modules 的 bootstrap min css 文件时 它在我的控制台中显示此错误 错误信息 在网络选项卡
  • 如何使用 capistrano 3 部署特定修订版

    如何使用 Capistrano 3 部署特定的 git 修订版 Capistrano 2 9 方法不再有效 cap S revision 80655da8d80aaaf92ce5357e7828dc09adb00993 deploy inv
  • 使用特征库从旋转矩阵中获取横摇、俯仰和偏航

    我需要从旋转矩阵中提取横滚 俯仰 偏航角 并且我想确保我所做的事情是正确的 Eigen Matrix lt simFloat 3 1 gt rpy orientation toRotationMatrix eulerAngles 0 1 2
  • 在过滤分支之后将每个人重新基于更改的 git 历史记录

    我们的 git 存储库历史上有一堆不再需要的大文件 我想使用 Pro Git 中解释的过滤分支技术删除它们 http git scm com book en v2 Git Internals Maintenance and Data Rec