小编gav*_*koa的帖子

如何在DVCS中跨分支移动错误修正?

如果我们发现某些分支中的错误,我们会修复它(请查看图片上的版本).但我们也有兴趣将此修复程序移动到版本和主要开发分支:

a-->b-->c              (Old release)
|    
A-->B-->C-->D           (Main release)
    |
    1-->2-->bugfix-->4  (New release)

svn记得在svn:merge属性(来自svn 1.6,2009)哪个版本合并到哪个分支.因此,下次如果您合并修订区域,则会从合并修补程序中跳过先前合并的修订.

如何应对现代DVCS?

我需要制作普通补丁并将其应用到每个分支机构或DVCS存在一些帮助吗?

注意:我不能将New branche 合并到Main,因为之前的更改集也会移动到Main branche.

Rebase也不可能,因为许多开发人员都会发布版本.

我有兴趣回答命名的braches模式和多存储库模式.

PS. Andy建议找到bug影响的所有分支的公共父级,更新它,对bug进行修复并将修复移动到受影响的分支.

通过更新到旧的变更集并进行更改,您可以创建新的分支.我建议创建命名分支(将其命名为bugID),以便稍后您可以轻松返回它.

找到我们有兴趣修复bug的所有分支的共同父母都有问题.

第一个解决方案(建议Andy)使用$ hg/git/bzr blame并仔细检查所有受影响文件的输出.这涉及到对第一BUG修复了一些最新的变更你找到之前什么变更引入的错误.然后,您需要将rebase fix(patch)修改为常见的父更改集.

另一个解决方案是使用$ hg/git/bzr bisect(您也可以手动执行更新以查找引入了错误的第一个修订版).这可以是扩展但更真实的解决方案,因为允许将bug修复到任何存在bug的分支.

我认为最好首先找到第一个BAD变更集,然后修复一个错误,而不是先修复一个错误然后找到第一个BAD变更集(除非您已经知道如何修复bug).引入差异也有助于理解它为什么会发生.

PPS.对于错误,很清楚哪个分支实现允许合并更改到任何受影响的分支. …

git mercurial branch dvcs bazaar

8
推荐指数
1
解决办法
453
查看次数

Mercurial和bzr的合并基础模拟(为合并找到共同的祖先)?

Git有merge-base命令,显示两个或多个分支的共同祖先.

Mercurial和bzr有什么类似的东西?

git merge mercurial bazaar

8
推荐指数
3
解决办法
727
查看次数

CHM格式替代品?

Microsoft CHM格式很棒,因为它提供了这样的设施:

  • 争论表有树型视图.
  • 指数.
  • 索引搜索.
  • 基于HTML源码.

    但是这种格式已经过时并且有许多缺点:

  • 有安全问题(允许执行JavaScript代码).
  • 不了解新的HTML格式.
  • 没有记录.
  • 无法正确处理不同的字符编码(如UTF-8).

    对于所有desctop操作系统都有读取器和编译器的CHM有什么替代方案吗?

    PS.我听说QT就像KDE一样,NetBeans也使用自己的帮助格式.非特定供应商如何?

    PPS.一些相关:

  • http://live.gnome.org/devhelp
    DevHelp是一个面向开发人员的基于GNOME的在线帮助系统
  • http://en.wikipedia.org/wiki/MHTML MHTML,MIME HTML的缩写
  • http://en.wikipedia.org/wiki/EPUB 由国际数字出版论坛免费开放电子书标准
  • http://en.wikipedia.org/wiki/Mobipocket 也是电子书的专有格式

    PPS.作为状态页面http://en.wikipedia.org/wiki/Comparison_of_e-book_formats最接近CHM的是EPUB和Mobipocket格式.但是这种格式在内部使用XHTML,因此EPUB/mobi读者可能无法正确呈现现有的html页面.同样作为这种格式的新手,我不知道他们是否在CHM中有TOC,索引和搜索.

  • chm text file-format mobipocket epub

    8
    推荐指数
    1
    解决办法
    1644
    查看次数

    检查Maven中的生命周期/阶段和文件是否存在并报告错误

    我想在Maven中检查属性文件中的身份验证数据是否由开发人员在应用程序测试期间提供,如果调用集成测试生命周期.

    作为状态惯例,将认证数据提交给源树是不好的.在用户名和密码等设置中描述的标准maven方法不应与pom.xml一起分发.

    但我不喜欢这种方法(我想要每个checkout设置,而不是每个dev-host !!)并且想要在VCS(SVN/GIT/HG)中提供src/text/resources/auth.properties.example作为示例,想要在Maven中检查是否存在src/text/resources/auth.properties的代码,这是每个开发人员拥有的(或者每个项目结账!!)但是只有在调用了集成测试阶段时(或者在集成之后的任何其他阶段)测试阶段).如果执行任何先前阶段(如编译测试) - 必须禁用此检查.

    Maven 验证阶段旨在检查构建一致性(请参阅引入生命周期).但是没有任何阶段的检查!所以我使用预集成测试阶段.

    我写了工作代码:

    <?xml version="1.0" encoding="utf-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>com.mycompany.app</groupId>
      <artifactId>my-app</artifactId>
      <packaging>jar</packaging>
      <version>1.0</version>
      <name>my-app</name>
    
      <profiles>
    
        <profile>
          <id>existent.properties</id>
          <activation>
            <file>
              <missing>auth.properties</missing>
            </file>
          </activation>
          <build>
            <plugins>
              <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.6</version>
                <executions>
                  <execution>
                    <phase>pre-integration-test</phase>
                    <goals>
                      <goal>run</goal>
                    </goals>
                    <configuration>
                      <target>
                        <echo>In order to run integration-text life-cycle:</echo>
                        <echo>  1) Rename 'auth.properties.example' …

    java ant build-process build maven

    8
    推荐指数
    1
    解决办法
    1199
    查看次数

    pid =`cat $ pidfile`或读取pid <$ pidfile?

    我读了很多init.d脚本,并且:

    pid=`cat $pidfile`
    
    Run Code Online (Sandbox Code Playgroud)

    线让我伤心.我不明白为什么人们不使用:

    read pid <$pidfile
    
    Run Code Online (Sandbox Code Playgroud)

    上一个示例使用符合POSIX的语法,不执行fork/ exec运行外部进程(cat).

    最后的解决方案还允许在第一个换行符后跳过内容.

    是否有任何带有read命令的陷阱(尽管它执行拆分为字段)?

    更新.有些人使用非便携式扩展来实现shell:

    如何从文本文件变量到Bash变量

    pid=$(<$pidfile)
    
    Run Code Online (Sandbox Code Playgroud)

    posix sh

    8
    推荐指数
    1
    解决办法
    3524
    查看次数

    创建没有timeZone的时间戳

    我如何创建一个java.sql.timestamp没有时区(我得到2007-09-23T10:10:10Z并假装2007-09-23T10:10:10).

    我尝试:

    Timestamp timestamp = Timestamp.valueOf("2007-09-23 10:10:10");
    
    Run Code Online (Sandbox Code Playgroud)

    但在调试中我看到了cdate 2007-09-23T10:10:10.000+0100而不是2007-09-23T10:10:10

    java timezone timestamp jdbc

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

    在Java 7中将访问修饰符放在注释后是否合法?还是Java 8?

    这是通常的代码:

    @Autowire
    private Service service;
    
    Run Code Online (Sandbox Code Playgroud)

    但是使用Java 7,这也可以(并且更短):

    private @Autowire Service service;
    
    Run Code Online (Sandbox Code Playgroud)

    这在Java 8中是否合法(具有相同的语义)?这是不好的编码练习吗?

    java annotations java-8

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

    Spring 实用方法将类转换为通用 bean 名称

    我的来源有一个常数,即首字母降低的类名。

    Spring 是否有实用方法可以将类类型转换为首字母降低的字符串?这使我可以安全地重构类名。

    例如:

    SpringXXX.defaultBeanNameYYY(MyCustomBeanFactoryProcessor.class)
    
    Run Code Online (Sandbox Code Playgroud)

    应该产生:

    myCustomBeanFactoryProcessor
    
    Run Code Online (Sandbox Code Playgroud)

    java spring

    7
    推荐指数
    1
    解决办法
    2144
    查看次数

    是否可以为:启用bash_completion:或者:r!在VIM?

    我可以使用:shell输入当前目录并运行命令.bash_completion工作正常.

    但是如何让bash_completion工作:命令:r!命令案例?

    注意.我是Emacs用户和Emacs M-!命令不允许这样的事情(也是Mx shell,你需要Mx术语来获得bash_completion).

    vim bash-completion

    6
    推荐指数
    1
    解决办法
    215
    查看次数

    C中有符号的单字节字符是什么 - ( - 128)?

    我的小程序:

    #include <stdio.h>
    
    int main() {
        signed char c = -128;
        c = -c;
        printf("%d", c);
        return 0;
    }
    
    Run Code Online (Sandbox Code Playgroud)

    打印:

    -128
    
    Run Code Online (Sandbox Code Playgroud)

    减( - )运算符是否可以跨CPU运行?

    c cpu instruction-set

    6
    推荐指数
    1
    解决办法
    2161
    查看次数