带分支的 Git LFS 的工作流程是什么?

2024-03-15

我已将 Git LFS 引入到我在 bitbucket.org 上的一个存储库中。分叉此存储库的用户无法推送到他们的分叉,因为那里没有空间可容纳 LFS 文件。我的理解是,当您在那里分叉存储库时,LFS 文件不会被复制。

将 Git LFS 与 Bitbucket 结合使用是否意味着分叉不可能或至少可用?或者 Git 是否有特殊的工作流程/配置可以在这里提供帮助?

请注意,就我而言,我使用分叉主要是为了将上游工作持久化,但团队其他成员尚未准备好看到这些工作。例如,我会将未完成的工作推到那里,以便我可以在不同的物理位置继续进行。完成后,我将作品发布到origin供团队其他成员查看。


这是一个已知问题,请参阅Git LFS 与 Bitbucket 的当前限制 https://support.atlassian.com/bitbucket-cloud/docs/current-limitations-for-git-lfs-with-bitbucket/#CurrentlimitationsforGitLFSwithBitbucket-GitLFSfilesarenotcopiedwhenarepoisforked。我也希望 Bitbucket(和 Github!)能够改进这一点。

结果:

  • LFS 文件必须在 fork 和上游存储库之间手动同步
  • 分叉还将使用大量的大文件存储空间,而不仅仅是上游(有免费的存储配额 - 但在用完之后,您将不得不为每个分叉付费,ouch!)
  • 要将 LFS 文件从分支复制回上游,您需要对上游存储库进行写访问,或者上游所有者必须自己执行此操作

如何同步 LFS 文件:

  1. 第一次克隆 fork 存储库 - 它还没有复制任何 LFS 文件,因此您必须在没有 LFS 文件的情况下克隆它(否则克隆将失败)
export GIT_LFS_SKIP_SMUDGE=y
git clone <address of your fork>
  1. 同步上游 -> fork(将 LFS 文件复制到您的 fork)-最初和每次 git fetch 上游时
git lfs fetch --all <upstream>
git lfs push --all <fork>
  1. 同步 fork -> 上游(仅当前分支)-每次你的 PR 合并后
git lfs fetch <fork>
git lfs push <upstream>

如果有比这更好的工作流程,请告诉我。这是 Bitbucket LFS 处理的严重限制。

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

带分支的 Git LFS 的工作流程是什么? 的相关文章

  • git Blame:合并后正确的作者

    GIT 合并引入了新的提交 这会导致 git Blame 问题 合并的行似乎是由进行合并的开发人员提交的 我可以理解这种情况冲突的变化 因为他解决了冲突 但是有没有办法让非冲突线路不发生这种情况呢 一些 git Blame 的选择 如果没有
  • 致命:无法将 HEAD 解析为有效引用

    我正进入 状态fatal Failed to resolve HEAD as a valid ref 每当我尝试承诺时 我努力了 echo ref refs heads master gt git HEAD 但它不起作用 也尝试过 git
  • 无法使用 git 推送或获取 [重复]

    这个问题在这里已经有答案了 我可以拉 但无法使用 git 版本 1 9 5 推送或获取 它突然开始给我以下错误 关于如何修复它有什么想法吗 git fetch fatal unable to access https email prote
  • 如何生成类似github的影响图?

    是否有一些程序 或者我错过的一些神奇的 git 插件 可以从 git 存储库获取影响图或类似的东西 而无需通过 github 就数据收集而言 我可以生成图表 我不确定从哪里开始编写自己的代码 我假设有一些标志我可以传递给 git log 来
  • Spring Cloud Config - 不允许使用 git-upload-pack

    我有一个在 docker 环境中运行的 spring boot 应用程序 它连接到 Git 存储库以获取应用程序的配置 我的问题是 当尝试获取 properties 文件时 应用程序有时会出错 这很奇怪 因为如果我更改用户和密码 同一个应用
  • TortoiseGit - 更改默认合并消息

    系统描述 Windows 7的 git版本2 10 1 windows 1 乌龟Git 2 3 0 0 I want 合并提交消息在不同的情况下有所不同fully自动方式 no manual amend Summary 在windows上
  • GIT 和 Ruby:如何从 ruby​​ 脚本内部取消设置 GIT_DIR 变量?

    我编写了一个非常简单的 部署 脚本作为我的post update挂钩到我的裸 git 存储库中 变量如下 live domain mydomain com staging domain stage mydomain com git repo
  • 合并 BPM 图表的最佳实践

    我们在 Java 环境中使用 Alfresco 活动图 这些图是有版本的 我们确实使用 GIT 我们经常会遇到合并分支的合并冲突 解决这个问题确实很痛苦 因为我们必须比较文件的文本内容来检查差异 有时 重新应用更改比合并更轻松 是否有合并此
  • 如何获取 git 存储库中所有文件的计数?

    如何获取 git 存储库中当前所有文件的计数 您可以使用以下命令获取 git 存储库中所有跟踪文件的计数 git ls files wc l 命令分解 The git ls files命令本身打印出存储库中所有跟踪文件的列表 每行一个 Th
  • Android repo 脚本创建的 .repo/projects/ 中的裸 git 存储库的用途是什么?

    The 安卓源码 http android git kernel org 由以下人员管理repo http source android com source version control html 使用 repo 同步时 一个名为 re
  • 删除 Xcode 项目的源代码控制

    我在 Xcode 项目上使用源代码控制已经有一段时间了 但现在我不想使用源代码控制 如何从 Xcode 中的项目中删除源代码控制 有三种方法 方法 1 将禁用所有项目的源代码管理 方法 2 将删除所有项目的单个存储库的链接 方法 3 将删除
  • Git 删除其他人从远程所做的最后提交

    所以 我的情况是 错误地 我已经授予某人对我的分支的承诺 现在 在我的本地 我已经进行了提交 当我尝试将其推送到远程时 它显示远程在前面 因为对方已经将他的代码推送到了这个分支并进行了多次提交 现在 我可以从远程删除这些提交而不将拉取到本地
  • 如何在源代码管理中存储 Visual Studio 的调试配置

    Visual Studio 的调试配置存储在 user文件是用户特定的并且传统上被源代码管理忽略 我对工作目录参数感兴趣 我需要它在程序员的机器上保持一致 并且它具有以下价值 outDir而不是默认的 ProjectDir 我怎样才能解决这
  • Git:忽略版本控制文件

    gitignore 文件对于忽略一些我们不想控制的文件非常有用 不幸的是 当文件已处于版本控制之下时 它无法使用 例如 我的 gitignore 已添加到 git 中 文件可能与我的同事想要的不同 例如我想忽略 Vim 文件 每当我对此文件
  • 为什么 git 在每次合并时都运行“git gc --auto”?

    今天 git 开始表现得很有趣 嗯 比平时更有趣 坚持运行git gc每次合并后 即使它们是背靠背的 C Projects my current project gt git pull remote Counting objects 31
  • 如何在现有裸存储库中创建引用日志信息

    您可能已经知道 默认情况下 git 不会为新的裸存储库启用引用日志更新 问题是 我有一个很长的历史存储库 但它是在我设置 logAllRefUpdates 标志之前创建的 现在我希望其他应用程序可以使用该信息 如何通过对现有存储库进行最少的
  • git merge --squash 和 gitcherry-pick 有什么区别?

    如果我在标准的主功能工作流程中工作 那么将功能分支压缩到主功能分支和将其挑选到主功能分支之间有什么区别 分支示例 m1 m2 master f1 f2 feature 我认为两者都有相同的输出 即 m1 m2 m3 master f1 f2
  • Git - 使用过滤器分支删除带有空变更集的提交

    如何使用 git filter branch 删除没有变更集的提交 我使用以下方法重写了我的 git 历史记录 git filter branch tree filter rm r f my folder f HEAD 效果很好 但现在我有
  • 如何使用 git 找到一个分支中但不在另一个分支中的所有提交?

    我有两个分行master and live Master是发展 分支并包含尚未准备好进入的提交live 如果在master需要进入的分支live树枝然后他们被樱桃采摘master to live 有时会做出承诺live分支然后是 樱桃摘入m
  • 使用nodegit切换分支/标签

    我整个早上都在尝试打开现有的存储库并使用 nodegit 更改分支或标签 文档内容很丰富 但似乎已经过时了 关于我做错了什么有什么想法吗 var NodeGit require nodegit var open NodeGit Reposi

随机推荐

  • 连接Redis集群失败

    我已经设置了 Redis 集群谷歌计算引擎 http console developers google com by 点击部署 https cloud google com solutions redis click to deploy
  • 获取 WhatsApp 消息

    是否可以创建一个监听器来获取消息whatsApp在安卓中 我的意思是就像你有一个broadcastReceiver在android中收听传入的短信 这件事是否需要任何 API 或者这是合法的事情 还是我需要获得任何许可whatsApp Wh
  • 如何在没有源代码的情况下在类中放置断点?

    我有一个 Web 应用程序 我需要找到访问 http 请求对象的所有类 因为其中一个类导致了难以发现的错误 因此我想在ServletRequest实现的一些方法中放置断点 然而 这个实现是由 Weblogic 提供的 我没有其来源 如何在没
  • GeoChart:标记加载速度非常慢

    google charts load current packages geochart google charts setOnLoadCallback drawRegionsMap function drawRegionsMap var
  • 使用 iconv 将 UTF8 转换为 UTF16

    当我使用 iconv 从 UTF16 转换为 UTF8 时 一切都很好 但反之亦然 它不起作用 我有这些文件 a 16 strings Little endian UTF 16 Unicode c program text a 8 stri
  • Android-布局的正确定位

    我似乎无法按照我想要的方式正确定位我的布局 我的布局看起来像这样 LinearLayout LinearLayout ListView LinearLayout TextView TextView TextView Button 我的目标是
  • 如何更改全局 .vscode 文件夹的位置?

    我正在 Linux 上设置 Visual Studio Code 由于机器是共享的 我的 HOME文件夹的大小受到限制 没有空间容纳扩展名 存储在 HOME vscode 我尝试安装它们失败了 我在其他开发目录上确实有足够的空间 但我找不到
  • 从 Android 通讯录中删除联系人

    我正在尝试从手机通讯录中删除联系人 该联系人会从手机联系人中删除 但不会从服务器端 Google 联系人 中删除 并且当 Google 联系人同步触发时 已删除的联系人会重新出现 下面是我的代码 public static void del
  • BIRT:无法检索 XML 数据源。 XML 数据源文件无效或该文件不存在

    我创建了一个 XML 数据源 用于从本地应用程序获取 XML 数据 创建数据集时出现以下错误 org eclipse datatools connectivity oda OdaException XML data source canno
  • Python:剥离除数字之外的所有内容

    我必须从几个字符串中的每个字符串中提取一个数字 测量的时间值 我怎样才能优雅地做到这一点 所有数字均为正数 且最多保留两位小数 例如 2 3 40 09 101 4 E 表示法中没有数字 我正在寻找的代码应该执行类似于以下伪代码的操作 gt
  • Swift 中未宣布辅助功能自定义操作

    当我添加accessibilityCustomActions对于一个对象 它在设备上可以正常工作 只要能够上下滑动操作并选择它们 但没有任何公告表明有 可用操作 我应该将其写入accessibilityLabel myself 我认为通过将
  • 如何查明实体框架对象是否已更改?

    我有一个叫做Uczestnik刚刚保存到数据库 var konsultant uczestnik Konsultanci uczestnik Konsultanci null null attached object and reuse i
  • 如何检测仅包含空格的字符串?

    包含一个空格的字符串长度始终等于 1 alert My str length str length 空格是一个字符 所以 str alert My str length str length My str length 3 如何区分空字符串
  • 使用 Dygraphs 绘制图表:根据缩放进行数据采样

    尽管与其他解决方案相比 Dygraphs 的性能非常好 但当查看越来越多的数据点时 性能不可避免地会变慢 我已经在本地加载了所有数据 Dygraphs 有没有办法智能地显示较低的分辨率 就数据点数量而言 然后在缩放时显示更多内容 虽然没有内
  • 同一解决方案中的 MVC 和 Web API 项目

    我不久前创建了一个解决方案 其中包含一个 Web API 2 项目 向移动设备提供 JSON 数据 和一个类库 包括我的数据访问服务 Web API 项目使用 Ninject 进行 DI 一切正常 现在我需要为几个网页添加一个单独的 MVC
  • 如何在 Odoo 12 中使用 Python XML-RPC 注册付款

    首先我创建了这个函数 def invoiceRegisterPayment self register payment row confirm result self ODOO OBJECT execute kw self DATA sel
  • 如何设置SBT的默认项目

    假设我有一个包含三个项目的构建 A B 和 C 如果我当前处于 A 的上下文中并重新加载构建 则重新加载后可能会将上下文更改为 C 因此 每次重新加载后我都必须更改项目上下文 有没有办法将特定项目设置为默认上下文 SBT 选择第一个词法项目
  • 来自服务器的错误:拨打后端时出错:拨打 tcp 10.9.84.149:10250: getsockopt: 连接被拒绝

    我有一个包含三个节点的 kubernetes 集群 10 9 84 149 10 9 105 90 and 10 9 84 149 当我的应用程序尝试在某个 pod 内执行命令时 kuebctl exec it
  • 使用 powershell 合并两个相似但两列不同的表

    我需要连接在 Powershell 中创建的两个表 问题在于 在它们共享的 5 列中 每个表中有两列不同 我怎样才能连接这两个表 然后能够对它们进行排序 我猜我会让两个人做以下事情 例子 表格1 列 a b c d e 表2 a x c d
  • 带分支的 Git LFS 的工作流程是什么?

    我已将 Git LFS 引入到我在 bitbucket org 上的一个存储库中 分叉此存储库的用户无法推送到他们的分叉 因为那里没有空间可容纳 LFS 文件 我的理解是 当您在那里分叉存储库时 LFS 文件不会被复制 将 Git LFS