小编cmc*_*nty的帖子

集成商工作流程,fetch-rebase-push对远程回购是否安全?

我正在使用集成商工作流程管理git repo.换句话说,我从我的同事那里得到了承诺,然后将它们推向了受祝福的回购.

在大多数情况下,我想保持提交历史的线性,所以在我整合更改时可以做一个rebase而不是一个merge吗?这是一个例子:

git fetch coworker
git checkout coworker/master
git rebase master
git checkout master
git merge HEAD@{1}
git push
Run Code Online (Sandbox Code Playgroud)

我担心当他们下一次做远程回购时会发生什么git pull.git是否能够处理这个问题,或者在coworker回购失败期间pull,现在提交的顺序是不同的origin

更新:我原来有一个例子来自'master'的'同事'分支.我的意图恰恰相反,将"同事"提交放在主人之上.所以我更新了这个例子.

git workflow rebase integrator

5
推荐指数
1
解决办法
1170
查看次数

使用 git-p4 克隆部分 Perforce 存储库

选择性导入大型 Perforce 存储库的正确方法是什么?

git-p4 文档提到您可以-//depot/main/ignore切换到过滤目录。这是否等同于运行 agit filter-branch以在克隆后删除相同的目录?

此外,Perforce 似乎提供了另一个称为“客户端”视图的功能。之前没有用过Perforce,所以对使用模型有点陌生。我目前的理解是,p4在运行git p4 clone. 有人有完整的细节吗?

git perforce git-p4

5
推荐指数
1
解决办法
3034
查看次数

在多台Windows机器上自动执行基于Java的软件安装

我正在使用需要部署到多个Windows服务器的Java项目.我正在尝试确定自动化的正确方法.我的第一选择是使用cygwin/ssh路由并使用像fabric这样的部署框架来自动化所有内容.

任何人都可以提供可用于实现相同目标的其他方法,以及为什么这将是首选解决方案的原因?

java windows deployment build-automation build

5
推荐指数
1
解决办法
189
查看次数

为什么 Ant Exec 任务返回代码与 ERRORLEVEL 值不匹配?

我有一个从 Ant exec 任务调用的批处理脚本来编译一些 CSharp 代码。批处理脚本的结构如下

msbuild.exe %ARGS%
echo %ERRORLEVEL%
Run Code Online (Sandbox Code Playgroud)

现在当任务在 Ant 中运行时,我得到以下结果:

 [exec] Time Elapsed 00:00:09.48
 [exec] 0

 BUILD FAILED
 C:\proj\build.xml:410: exec returned: 2
Run Code Online (Sandbox Code Playgroud)

%ERRORLEVEL% 怎么可能是 0,但是 Ant exec 得到的返回码是 2?如果命令不返回代码,是否设置了一些默认错误代码?Ant 文档显示:

error code 2 means 'no such program',
Run Code Online (Sandbox Code Playgroud)

但显然我的批处理文件正在正确执行。

用 Ant 代码更新

<target name="build.csharp" if="isWindowsPlatform">
    <exec executable="cmd.exe" failOnError="true">
        <arg value="/c"/>
        <arg value="build.csharp.bat" />
    </exec>
</target>
Run Code Online (Sandbox Code Playgroud)

java ant batch-file

5
推荐指数
1
解决办法
7255
查看次数

防止Git Stash重置分阶段文件

假设以下场景:

文件ab都被修改,并a在索引中暂存.如果你运行git stash然后git stash pop,文件a不再上演.

如何使git stash索引返回到先前的状态?

git git-stash

4
推荐指数
1
解决办法
438
查看次数

当依赖项发生变化时,如何让javac重新编译源代码文件?

当使用javac进行增量构建时,我似乎在项目中遇到运行时错误.是否支持此类工作流程?例如,if A.java依赖于B.java,并被B.java修改; 将javac重新编译,A.java因为它的依赖性改变了吗?

现在我正在使用javac ant build-task进行编译:

    <javac destdir="${classes.dir}"
            srcdir="${src.dir}"
            source="${javac.version}"
            debug="${javac.debug}"
            deprecation="${javac.deprecation}"
            includeantruntime="build.sysclasspath=last">
        <classpath refid="compile.classpath" />
        <classpath refid="junit.classpath" />
    </javac>
Run Code Online (Sandbox Code Playgroud)

ant dependencies javac

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

Jquery append()方法和链接顺序调试

我试图用Jquery在表中插入一个新行.有人可以在两种技术之间发表评论:

  1. 这工作正常:

    $('<tr>').append(row).appendTo(table);
    
    Run Code Online (Sandbox Code Playgroud)
  2. 这不起作用,但目前尚不清楚为什么?

    $(row).appendTo($('<tr>')).appendTo(table);
    
    Run Code Online (Sandbox Code Playgroud)

jquery

3
推荐指数
1
解决办法
5490
查看次数

为什么Java HSQL会抛出AbstractMethodError异常?

我使用HSQL从GIS库中获取AbstractMethodError异常.我猜这是由我的机器上的配置问题引起的,但我不确定它是否与JRE或其他系统库有关.这是错误:

Exception in thread "main" java.lang.AbstractMethodError: org.hsqldb.jdbc.jdbcResultSet.isClosed()Z
Run Code Online (Sandbox Code Playgroud)

java exception jdbc hsqldb

3
推荐指数
1
解决办法
1514
查看次数

Gradle如何与共享常春藤或Maven存储库集成?

我一直在阅读Gradle及其存储库支持功能.文档表明它支持Ivy或Maven repos.这一点的含义对我来说并不完全清楚.

在Maven回购的情况下,我认为我的理解更完整.构建时,像Nexus或Artifactory这样的本地存储库将缓存MavenCentral所需的公共依赖项.对于发布,Gradle将为项目生成POM.xml,您可以将私有工件发布回本地存储库.我的理解是否正确?我希望控制正在使用的公共依赖项,同时纠正公共MavenCentral POM中的错误.

对于常春藤,我有点困惑.首先,共享的常春藤回购是什么样的?它只是通过SSH,SFTP,HTTP等托管的远程目录树吗?这是否适用于混合的Windows/Unix环境?Gradle如何将公共依赖项和构建的工件移动到共享的Ivy仓库中?Jenkins也可以执行这一步,怎么做?在定义新的公共依赖项并且需要将它们移动到共享的Ivy仓库时,是否需要额外的构建步骤,或者这是否无缝完成?

最后,假设两个模型的特征基本相同.什么是与Jenkins构建机器一起维护的解决方案?

repository ivy gradle maven

3
推荐指数
1
解决办法
1065
查看次数

Java Iterable的优点和缺点

接受和返回Iterable<T>类型的Java方法非常常见.我看到的问题是Iterator 接口非常有限,要么需要将Iterable重构为可用的数据结构,要么强制用户执行Iterable的多次遍历,从而增加执行时间.

有人可以纠正我吗?Iterables是否像我认为的那样糟糕?如果您被迫使用它们,是否有任何技术可以用来解决Iterables的限制?

java optimization coding-style

0
推荐指数
1
解决办法
497
查看次数