version-control相关内容
老实说,我对 git 的内部原理知之甚少. 我已经暂存并提交了一个 40mb 的目录,但是当我开始推送时...... $ git push --verbose --progress推送到 https://acron0@bitbucket.org/acron0/project.git“https://acron0@bitbucket.org"的密码:POST git-receive-pack
..
我刚刚在 http://blip.tv/play/Aeu2CAI. Git 是如何存储所有文件的所有版本的,如何在空间上仍然比 Subversion 哪个只保存最新版本的代码? 我知道这可以使用压缩来完成,但这会以速度为代价,但这也说明 Git 的速度要快得多(尽管它获得最大收益的地方是它的大部分操作都处于离线状态). 所以,我的猜测是 Git 广泛地压缩数据 它仍然更快
..
我想知道是否可以将其他人的存储库(或存储库的分支)用作您自己的 Git 存储库中的子模块.github 本身的文档要么丢失,要么我没有使用正确的术语来查找它.如果这不是将公共存储库作为共享库包含在 git 项目中的首选方式,我们将不胜感激作为替代最佳实践的建议. 解决方案 是的,您可以将任何存储库添加为项目中的子模块.就这样做: git 子模块添加 git://github.com/wh
..
做的时候: >git status 它在“未跟踪的文件"下显示了一个很大的 .pyc 文件列表.我不希望它显示这些,因为它会增加噪音. 换句话说,我如何让 git 一直忽略所有项目的 .pyc 文件? 编辑 我不是在寻求一种将我忽略的文件传播给其他人的方法,我的意思只是“对于所有项目",这意味着我不想将每个新项目配置为忽略 .pyc 文件. 更新 我应该补充一点,
..
我想在 Mercurial 中的给定目录中生成一个在两个修订版之间更改的文件的列表. 特别是,我对什么改变不感兴趣,但对那个目录中哪些文件改变不感兴趣. 例如,假设在 then 和 otherthen 之间,只有 2 个文件发生了变化: >hg hypothetical-command -r then:otherthenfoo.bazbar.baz> 假设的命令是什么?我试过 di
..
在我的部分名为 _Electronics 的第一个承诺中,它以大写字母开头,然后我将其更改为 _electronics. cygwin下的Git提交新名字后忽略了大小写,所以我在目标repo中手动改了名字. 现在它有时会将提交的 _electronics 部分更改为 _Electronics. 我做错了什么? 解决方案 它将被视为 2 种不同的事物,但会在不区分大小写的系
..
我对 git 和版本控制都不熟悉,所以我想弄清楚补丁是什么以及它与我在 git 中所做的其他活动有何不同? 我什么时候应用补丁?每次提交时都会发生吗? 解决方案 你可以在这个博客文章 如何创建补丁(您想要传达并应用于另一个存储库的更改的集合) (图片来自 2008 年的博客文章“Bioruby 与 git:这将如何工作?",由 Jan AERTS 发布) 另请参阅使用 G
..
当然,Mathematica 笔记本是纯文本文件——期望它们与版本控制系统(在我的例子中是 git,尽管我怀疑特定系统很重要)一起玩似乎很合理.但事实是,任何 .nb 文件都充满了缓存信息、时间戳和其他各种元数据.一大堆. 这意味着有限的版本控制是可能的——提交和回滚工作正常.然而,合并是一场灾难.Mathematica 不会打开带有合并标记的文件,文本编辑器也无法查看 .nb 文件.
..
我们正在使用 Perforce 和 Visual Studio.每当我们创建一个分支时,除非我们使用“从源代码管理打开",否则某些项目将不会被绑定到源代码管理,但其他项目无论如何都可以工作.通过我的调查,我知道其中涉及的一些事情: 在我们的 .csproj 文件中,有以下设置: 有时它们都设置为“SAK",有时则不是.如果这些都说“SAK",事情似乎更有可能奏效. 在我们的 .s
..
我有一个名为 Generic 的存储库,它是一个通用应用程序.我已将其分叉到一个名为 Acme 的存储库中,该存储库仅构建在应用程序存储的 Generic 存储库上,并为其添加了 Acme Co 品牌. 如果我对 Generic 中的核心功能进行更改,我想使用我对 中的核心功能所做的最新更改来更新 Acme 存储库通用.我该怎么做? 据我所知,我实际上是在尝试将上游存储库中所做的更改合
..
假设我有一台台式电脑和一台笔记本电脑,有时我在台式机上工作,有时我在笔记本电脑上工作. 来回移动 git 存储库的最简单方法是什么? 我希望 git 存储库是相同的,这样我就可以在另一台计算机上继续我离开的地方. 我想确保两台计算机上的分支和标签相同. 谢谢约翰 注意:我知道如何用 SubVersion 做到这一点,但我很好奇这将如何与 git 一起工作.如果方便的话
..
有没有一种简单的方法来编写可以访问其 Git 版本哈希的 C 代码? 我用 C 语言编写了软件,用于在实验室环境中收集科学数据.我的代码将它收集的数据记录在一个 .yaml 文件中以供以后分析.我的实验每天都在变化,我经常不得不修改代码.为了跟踪修订,我使用了一个 git 存储库. 我希望能够将 Git 修订哈希作为注释包含在我的 .yaml 数据文件中.这样,我就可以查看 .yaml
..
在编码时,我将打印语句添加到一些文件中以跟踪发生的情况. 完成后,是否可以还原某些文件中的更改,但提交我实际处理的文件? 假设我在文件 A 中添加了打印,但我修改了文件 B.B 是我想要提交的,而 A 是我想要返回到它的旧状态. 解决方案 根据您对文件 A 所做的更改,有三种基本方法可以执行此操作.如果您尚未将更改添加到索引或提交它们,然后您只想使用 checkout 命令 -
..
如何将 Github 拉取请求中包含的更改作为统一差异下载? 解决方案 要将提交查看为 diff/patch 文件,只需将 .diff 或 .patch 添加到URL 的结尾,例如: https://github.com/weppos/whois/pull/90 https://github.com/weppos/whois/pull/90.diff https://github
..
我只想还原对给定文件的特定提交所做的更改. 我可以使用 git revert 命令吗? 还有其他简单的方法吗? 解决方案 我见过的最简洁的方法是 这里 git show some_commit_sha1 -- some_file.c |git 应用 -R 类似于 VonC 的响应,但使用 git show 和 git apply.
..
我已经阅读了无数教程,但我一直在总结.这是我所拥有的: 我在 Windows 桌面上运行 RubyMine 我已经根据他们的 说明 Git 似乎在两台机器上都运行良好 这是我正在做的事情: 在服务器上: mkdir 项目 git 初始化 git add . git commit #==>没什么可提交的 在客户端: 在 RubyMine 中创建新项目 Git
..
我有两个工作分支,master 和 forum,我刚刚在 forum 分支中做了一些修改,我想要挑选成为大师.但不幸的是,我想要挑选的提交也包含一些我不想要的修改. 解决方案可能是以某种方式删除错误的提交,并用两个单独的提交替换它,一个是我想在 master 中选择的更改,另一个是不属于那里的. 我尝试过 git reset --hard HEAD^ 删除了所有更改,所以我不得
..
我尊敬的许多数据分析师都使用版本控制.例如: http://github.com/hadley/ 查看关于 http://permut.wordpress 的评论.com/2010/04/21/revision-control-statistics-bleg/ 不过,我正在评估是否值得采用 git 等版本控制系统. 简要概述:我是一名社会科学家,使用 R 分析研究出版物的数据.
..
我们是 git 新手,我想在我们存储库的开头设置一个标签.我们的生产代码与初始存储库相同,但从那时起我们就进行了提交.开头的标签可以让我们将生产“回滚"到已知的稳定状态. 那么如何向任意的、较旧的提交添加标签? 解决方案 示例: git tag -a v1.2 9fceb02 -m "Message here" 其中 9fceb02 是提交 ID 的开始部分. 然后您可以使
..
我正在构建一个使用第三方 JavaScript 库 (TinyMCE) 的网络应用程序. 我的应用程序有一些特定需求,需要我在几个地方修补库.补丁很简单(不到十几行),但因为它们特定于我们的用例而不是错误. 我希望能够在库本身的新版本发布时进行更新,这会覆盖我们在 Git 存储库中的更改. 我需要一种方法来确保在将更新的库推送到生产服务器之前始终应用我们的补丁.由于更改非常小,手
..