标签: dvcs

git是否具有与bazaar automv插件相同的功能?

我在项目中使用的唯一分布式修订控制系统是集市.除了如何办理结账外,我对git和mercurial了解不多.我喜欢bazaar的原因是automv插件.它检测我何时移动/删除了文件(从命令行/ ide等),当我赶时间时,我倾向于做很多事情.但是集市真的很慢,而我正在考虑转向git.git有类似于这个功能的东西吗?

git dvcs bazaar

2
推荐指数
1
解决办法
336
查看次数

git子模块:自定义

使用git子模块时,进行自定义的首选方法是什么?我是不是该...

  • fork项目并跟踪fork
  • 尝试覆盖默认行为
  • 在本地进行更改

如果这些都没有意义,那会是什么呢?

git customization dvcs git-submodules

2
推荐指数
1
解决办法
637
查看次数

Mercurial:为什么要在单独的克隆存储库而不是标记中维护单独的软件分支/版本?

我正在查看mercurial手册,第6章"使用多个分支".在那里,作者指出,如果您拥有相同软件的单独版本/分支,则以隐含的显而易见的方式将软件的每个分支托管在单独的存储库中是有意义的.

我知道Mercurial支持标签(这是在subversion AFAIK中完成分支的方式).为什么要使用不同的存储库而不是标签进行分支管理?

mercurial branch dvcs

2
推荐指数
2
解决办法
1098
查看次数

在git中恢复以前删除的代码(不一定是单个或整个文件)

我在一段时间后从我的代码中删除了一个类,并提交了删除.该功能是作为具有BDD样式规范的单个类实现的,并且在使用该功能时,在删除提交中更改了一些其他类.提交是干净的,因为提交中唯一的更改是删除这一个功能.

现在,我已经改变了主意,并决定只是因为我删除它才恢复功能我已经做了一大堆更改.(我知道这是一种可能性,但我没有保留副本,因为我知道我可以将其从版本控制中删除).我找到了提交:cb2a6b1我可以在以下时看到删除的行:git show cb2a6b1.问题是我现在如何将这些行应用到我的代码中?

git diff cb2a6b1 cb2a6b1~1生成一个diff,它将删除作为一个补充重新定义,但它不会git apply,主要是因为行号已经改变.我可以通过一些手动文本编辑手动将这些东西重新放入,但是有更自动的替代方案吗?

git dvcs

2
推荐指数
1
解决办法
140
查看次数

本地分支机构在GitHub的"网络"视图中显示

我们正在使用Git,我们的工作流程包含一个'dev'和'master'分支,它位于GitHub和每个开发人员的本地存储库中.没有工作直接在'master'或'dev'上执行,而是在本地分支中执行,只在'dev'上进行合并,然后在'master'上进行合并.我们不会将本地分支推送到GitHub.

出于某种原因,开发人员的本地分支出现在GitHub的"网络"视图中,这使网络图混乱(我应该指出分支本身不存在于GitHub上的分支列表下).

我的问题是这是否是正常行为并自动发生,以显示"dev"和"master"的更改来自或是因为某人错误地推送了本地分支并稍后将其删除?如果是后者,有没有办法清理杂乱?

git version-control workflow dvcs github

2
推荐指数
1
解决办法
2478
查看次数

git:更新当前分支

有2个git存储库,A和B.

两者都只有一个主分支,并且都在本地检出并正在处理.

我从A推进B的主分支,我收到这条消息:

warning: updating the current branch
warning: Updating the currently checked out branch may cause confusion,
warning: as the index and work tree do not reflect changes that are in HEAD.
warning: As a result, you may see the changes you just pushed into it
warning: reverted when you run 'git diff' over there, and you may want
warning: to run 'git reset --hard' before starting to work to recover.
warning: 
warning: You can set 'receive.denyCurrentBranch' configuration variable …
Run Code Online (Sandbox Code Playgroud)

git version-control workflow dvcs

2
推荐指数
1
解决办法
1706
查看次数

SVN和DVCS工作流程 - 保留历史记录

是否可以使用VCS(最好是SVN)和DVCS(最好是Mercurial或Git)创建简化的工作流程?

以下事实描述了所需的工

  • 有一个中央VCS服务器.
  • 主要开发发生在中央服务器上.
  • 核心开发团队之外的任何人(让他们命名为Joe)可以拍摄具有完整历史记录的源代码快照.
  • Joe想在自己的分支中开发一个功能.
  • Joe没有对VCS的写权限,所以
  • 他正在本地开发并致力于他自己的DVCS回购.
  • 当他完成后,他联系主要的回购管理员将他的工作合并到中央.

这里有一个棘手的部分:他的作品可以合并到中央回购中,保留它的历史吗?那么主要开发团队可以跟踪Joe的个人提交?

我想学习任何东西,这可以指出我正确的方向.如果工作流不是不可能实现的,那么可以随意抛出指向教程的链接.如果您对VCS-DVCS工作流程有任何经验,请分享.如果不可能实现它,那么为什么对我来说也很有价值.

我知道这个问题可能与其他问题类似(例如vcs或dvcs工作流程),但无论历史是否被保留,我都找不到任何线索.

svn git workflow mercurial dvcs

2
推荐指数
1
解决办法
323
查看次数

如何获得最接近包含除.hgtags之外的其他更改的给定修订版本?

我有一个修订哈希键.我想获得包含任何内容的最接近的修订版,但是.hgtags.

例如,考虑Mercurial历史的以下片段:

D:\CI\NC\8.0>hg log -l3 -b 8.0 -v
changeset:   1768:633cf1f61665
branch:      8.0
tag:         tip
user:        ci
date:        Wed Nov 16 21:06:20 2011 +0200
files:       .hgtags
description:
Replaced tag 'good.NC.16' with 'rejected.NC.16' for changeset 9451e8f187b1


changeset:   1767:6cad328c622c
branch:      8.0
parent:      1765:9451e8f187b1
user:        ci
date:        Wed Nov 16 21:04:26 2011 +0200
files:       .hgtags
description:
Added tag 'good.NC.16' for changeset 9451e8f187b1


changeset:   1765:9451e8f187b1
branch:      8.0
tag:         rejected.NC.16
user:        gilad
date:        Tue Nov 15 18:26:09 2011 +0200
files:       .hgignore
description:
update
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果给定的修订版本是633cf1f61665,那么我正在寻找修订版本 …

version-control mercurial dvcs directed-acyclic-graphs

2
推荐指数
1
解决办法
165
查看次数

为什么Mercurial在提交之前没有检查最新版本?

在SVN中,如果本地修订版与主存储库不是最新的,则无法提交.Mercurial不会检查这个并允许您提交.然后你必须做一个合并.

如果有许多程序员在工作,那么这可能会导致一个大问题.这有什么办法吗?

svn mercurial dvcs

2
推荐指数
1
解决办法
93
查看次数

化石,是否有可能在单枝中有2片叶子?

我和我的朋友需要并行开发一个项目.这该怎么做?

我在每片叶子上创建了两个分支.试图合并叶子,但编辑文件的冲突错误.合并它们的方法是什么?

我想知道是否可以在一个分支中有2片叶子?如果是,那么除了默认叶之外,如何创建新叶.

version-control dvcs fossil

2
推荐指数
1
解决办法
627
查看次数