version-control相关内容
我有以下目录结构: g1/ .git 一 b c/ .git d e 如您所见,我在存储库“g1"中有一个存储库“c".当我使用以下命令时: git clone g1 g2 我只得到以下目录结构: g1/ .git 一 b c/ 目录“c"保持为空.有什么想法吗? 解决方案 子模块(在 Pro Git Book),帮助管理嵌套在主存
..
我知道怎么做它,我只是不明白为什么 hg mv 默认情况下也不移动文件的历史记录. 让我在 hg mv 之前运行 hg log --follow 真的很愚蠢.这让我想起了使用 cvs 时,您需要使用两种不同的操作删除和添加文件并以相同的方式丢失历史记录. 恕我直言,如果我只是使用内置的 mv 可以丢失历史记录,但我正在使用 hg mv,并且,考虑存储库本身,没有意义丢失历史默认.应该有
..
所以,我对 git 还很陌生,在过去几周阅读了一些资料后,我读到一些人说不应该更改 master 分支,而是应该从 和然后合并到. 我很高兴在分支上工作,但想知道不在主分支上工作的原因? 解决方案 我想通常的推理是,master 分支应该代表代码的“稳定"历史.使用分支来试验新功能,实现它们,当它们足够成熟时,您可以将它们合并回 master. 这样,master 中的代码几乎
..
我想我已经知道答案了,但我还是想问: 我们有一个文件被添加到 Mercurial 存储库中,其中包含敏感信息.有没有办法在不删除整个 repo 的情况下删除该文件及其更改历史记录? 解决方案 不,你不能.阅读应该有的更改从来没有关于它的红皮书的部分;尤其是那些敏感的变化呢 小节,其中包含本段: Mercurial 也没有提供方法完全制作文件或变更集从历史中消失,因为有没有办法强
..
我正在编写一个小脚本,想知道自当前分支创建以来我在当前分支上进行了多少次提交. 在这个例子中,我将在 child 上进行 2 次提交: git checkout mastergit checkout -b 孩子...git commit -a...git commit -a 所以我想要的是 commit_number = ...回声 $commit_number 解决方案 Git
..
许多使用 Visual Studio 的程序员很难适应这样一个事实,即在其他源代码控制系统中,文件在任何时候都不需要锁定/检出给一个开发人员. 合并的支持者说,允许两个人处理同一个文件可以提高生产力,因为它消除了为同一个源文件排队.它还避免了需要编写代码但将源代码签出给刚休完两周假期的人的情况. 锁定支持者说,当多人同时处理同一个文件时,会带来很大的风险.据他们说,当使用合并模型时,团
..
我刚刚将一个项目从 Mercurial 迁移到 Git.当您添加标签时,Mercurial 添加了空提交,因此我最终在 Git 中得到了我想删除的空提交. 如何从 Git 中删除空提交(其中没有任何文件的提交)? 谢谢. 解决方案 一种简单(但缓慢)的方法是使用 git filter-branch 和 --prune-empty.没有其他过滤器,不会改变其他提交,但任何空提交都
..
我们有一个 Flash Builder(基于 Eclipse)项目,它从不同的位置提取源代码,包含在项目所在的源代码管理中.根据我们的组织要求,源代码存在于不直接位于项目目录下的目录中.最初我们遇到的问题是链接资源的所有路径都是绝对路径,并且在其他具有不同路径的机器上不起作用. 现在,我们对此的解决方案是设置一个指向工作文件夹根目录的链接资源路径变量.所有其他位置都基于此,因此我们可以包含来
..
Visual Studio 在添加/删除引用和项目时随机崩溃.任何想法为什么?安装 Sp1 会有帮助吗? 编辑:除了 SourceSafe,我不使用任何插件.我的大部分开发工作都是在连接模式下进行的. 开发使用: Visual Studio 2008 WinXp 终端服务 -> Win2k3 Sp2 (64bit) VSS 8.0,32 位 解决方案 尝试删除 .user
..
是否有一种简单的方法可以获取给定包的 R 包依赖项(所有递归依赖项)列表,而无需安装该包及其依赖项?类似于 portupgrade 或 apt 中的虚假安装. 解决方案 您可以使用 available.packages 函数的结果.例如,要查看 ggplot2 依赖什么: pack 给出: [1] "R (>= 2.14), stats, methods" 请注意,根据您想要实现
..
在我的主目录中,我在本地 git 存储库中有文件,因为我想在版本控制下跟踪它们. 这些文件中的大部分我想推送到远程存储库,但有一些我想只保留在我的本地存储库中(它们包含轻微的敏感信息). 我如何用 git 实现这一目标?我可以配置一个“.gitignore-for-push"文件吗?我不能使用本地 .gitignore 文件,因为它会将这些文件完全排除在跟踪之外. ps:我知道问
..
当我想通过交互式 rebase 压缩一些提交时: git rebase -i HEAD~3 然后: pick cbd03e3 最终提交(签名)s f522f5d bla-bla-bla(签名)s 09a7b7c bla-bla(签名)# 将 c2e142e..09a7b7c 重新绑定到 c2e142e... 尽管所有这些提交都具有相同的签名,但最终提交没有 gpg 签名.交互式 rebas
..
所以让我在这个问题的开头说我知道之前关于 Stackoverflow 主题的问题.事实上,我已经尝试了我能找到的所有解决方案,但我的存储库中有一个二进制文件拒绝删除并继续大大增加我的存储库大小. 我尝试过的方法, 大卫安德希尔的剧本 Github 的使用方法 Darhuuk 对 从 git repo 中完全删除文件的回答推荐了这两种方法 然而,在尝试了这两种解决方案之后,
..
我对 git 比较陌生,正在尝试以正确的方式设置我的存储库. 基本上我的应用程序是一个平台,所以这个平台的实现是基于主分支的,但对这些文件和一些附加文件有一些小的修改. 我尝试将其设置为分支,所以我有一个 master 分支、implementation_1 和 implementation_2. 但据我所知,这意味着本地所有的分支都存储在一个目录中,它们的分离只能通过 git
..
我现在正在使用 SVN,过去我也使用过 CVS 和 VSS.SVN 是我目前最喜欢的书籍,但我听说了很多关于 git 的内容.在使用过 git 的人中,您的经验有哪些优点和缺点? 解决方案 我没有很多的 git 经验,但是: 优点: 真的很快 本地提交摇滚 快速启动新存储库(无需配置等) github 易于使用 (除了能够拥有本地存储库并推送到公共存储库之外,我还没
..
我需要知道是否有办法将我的代码从 CVS 源代码管理迁移到 Git? 如果是,我的提交历史呢? 解决方案 我个人没有做过从 CVS 到 Git 的转换,但我相信 Eric Raymond 的 cvs-fast-export 是要使用的工具.他在这里.cvsps 是 Eric 维护的另一个工具,但它有最近不推荐使用 cvs-fast-export.cvs2git 是另一种建立在一些相同
..
我刚刚开始使用 Mercurial,遇到了一些我不明白的事情. 我对多个文件进行了更改,现在我想撤消对其中一个文件所做的所有更改(即返回到我对一个特定文件的最后一次提交). 据我所知,我想要的命令是 revert. 在我链接的页面中,有如下声明: 但是这个操作并没有改变工作的父修订目录(或修订,以防万一未提交的合并).撤消未提交的合并,您可以使用“hg更新 -C -r."
..
我正在尝试使用 Mercurial 仅提交某些文件.由于 hg 在我尝试提交更改时自动添加它想要提交所有文件.但我不希望那样,因为某些文件还没有“准备好". 有 hg commit -I thefile.foo 但这仅适用于一个文件.对我来说更好的方法是如果我可以像在 Git 中那样关闭自动添加.这可能吗? 解决方案 您可以在命令行上指定文件,正如 tonfa 所写: $ hg
..
我目前在调试分支上,并且想切换到主分支,而不修改工作树(保持它在调试分支中的方式),所以我可以将一些更改提交到主分支分支. 有没有办法做到这一点? 解决方案 您可以执行以下操作: git checkout --detachgit reset --soft mastergit 结帐大师 说明: 如果你在 debug 分支上并且会执行 git reset --soft mast
..
我正在研究构建一个超小型(最好是 PHP)Web 应用程序的想法,该应用程序将(除其他外)用作 git 存储库的最小前端. 任何用于读取 git 存储库的库/文章(“.git"文件夹)无需执行“git"进程?我正在寻找 API管理 git 存储库.我只对基本功能感兴趣,例如读取上次提交(提交者名称、提交说明、日期)、显示和遍历分支... 谢谢,阿奈米 解决方案 Would th
..