mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2024-12-22 09:17:39 +00:00
java based merging?
This commit is contained in:
parent
3eb77e3e8b
commit
1556101a98
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -1 +1,2 @@
|
|||||||
*.java diff=java
|
*.java diff=java
|
||||||
|
#*.java merge=import-driver #TODO not implemented, I'm just using a merge tool instead
|
3
.gitconfig
Normal file
3
.gitconfig
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[merge "import-driver"]
|
||||||
|
name = Java merge driver used to resolve conflicts
|
||||||
|
driver = merge-imports.sh %O %A %B %L %P
|
@ -85,9 +85,9 @@ if (!project.hasProperty("gitCommitHash")) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
buildScan {
|
//buildScan {
|
||||||
setTermsOfServiceUrl("https://gradle.com/terms-of-service")
|
// setTermsOfServiceUrl("https://gradle.com/terms-of-service")
|
||||||
setTermsOfServiceAgree("yes")
|
// setTermsOfServiceAgree("yes")
|
||||||
|
//
|
||||||
publishAlways()
|
// publishAlways()
|
||||||
}
|
//}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
group=com.sk89q.worldedit
|
group=com.sk89q.worldedit
|
||||||
#version=7.1.0-SNAPSHOT
|
#version=7.1.0-SNAPSHOT
|
||||||
|
|
||||||
org.gradle.jvmargs=-Xmx1G
|
#org.gradle.jvmargs=-Xmx1G
|
||||||
#org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
|
org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
|
||||||
org.gradle.daemon=true
|
org.gradle.daemon=true
|
||||||
org.gradle.configureondemand=true
|
org.gradle.configureondemand=true
|
||||||
org.gradle.parallel=true
|
org.gradle.parallel=true
|
||||||
|
3
merge-imports.sh
Normal file
3
merge-imports.sh
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
javac merge/Merge.java
|
||||||
|
java -cp merge Merge "$1" "$2" "$3" "$4" "$5"
|
||||||
|
exit $?
|
BIN
merge/Merge.class
Normal file
BIN
merge/Merge.class
Normal file
Binary file not shown.
36
merge/Merge.java
Normal file
36
merge/Merge.java
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
import java.awt.Desktop;
|
||||||
|
import java.io.BufferedReader;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.FileReader;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
|
import java.nio.file.Files;
|
||||||
|
import java.nio.file.Paths;
|
||||||
|
|
||||||
|
public class Merge {
|
||||||
|
public static void main(String[] args) throws IOException {
|
||||||
|
File ancestor = new File(args[0]);
|
||||||
|
File current = new File(args[1]);
|
||||||
|
File other = new File(args[2]);
|
||||||
|
int markerLenth = Integer.parseInt(args[3]);
|
||||||
|
File original = new File(args[4]);
|
||||||
|
|
||||||
|
// HOWTO:
|
||||||
|
// 1. Add contents of .gitconfig to your local .git/config
|
||||||
|
// 2. This script will run for any merge conflicts
|
||||||
|
|
||||||
|
// TODO auto resolve merge conflicts in `current`
|
||||||
|
// - imports
|
||||||
|
|
||||||
|
boolean failed = true;
|
||||||
|
if (failed) {
|
||||||
|
System.exit(1); // Auto merge failed
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String read(File file) throws IOException {
|
||||||
|
byte[] encoded = Files.readAllBytes(file.toPath());
|
||||||
|
return new String(encoded, StandardCharsets.UTF_8);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user