回答編集履歴

1

追記

2018/09/04 05:28

投稿

Zuishin
Zuishin

スコア28662

test CHANGED
@@ -1 +1,97 @@
1
1
  試さず書きますが、`exit 1` でどうですか?
2
+
3
+
4
+
5
+ ###追記
6
+
7
+
8
+
9
+ ツールを作った方が早そうなので作りました。
10
+
11
+
12
+
13
+ ```C#
14
+
15
+ using System;
16
+
17
+ using System.Diagnostics;
18
+
19
+ using System.IO;
20
+
21
+ using System.Text;
22
+
23
+
24
+
25
+ namespace ConsoleApp1
26
+
27
+ {
28
+
29
+ class Program
30
+
31
+ {
32
+
33
+ static int Main(string[] args)
34
+
35
+ {
36
+
37
+ if (args.Length > 0)
38
+
39
+ {
40
+
41
+ Directory.SetCurrentDirectory(args[0]);
42
+
43
+ }
44
+
45
+ var info = new ProcessStartInfo("git", "branch")
46
+
47
+ {
48
+
49
+ RedirectStandardOutput = true,
50
+
51
+ StandardOutputEncoding = Encoding.UTF8,
52
+
53
+ UseShellExecute = false
54
+
55
+ };
56
+
57
+ var process = Process.Start(info);
58
+
59
+ var output = process.StandardOutput.ReadLine();
60
+
61
+ process.WaitForExit();
62
+
63
+ if (output != "* master")
64
+
65
+ {
66
+
67
+ Console.Error.WriteLine("master ではありません");
68
+
69
+ return 1;
70
+
71
+ }
72
+
73
+ return 0;
74
+
75
+ }
76
+
77
+ }
78
+
79
+ }
80
+
81
+ ```
82
+
83
+
84
+
85
+ これをコンパイルして ConsoleApp1.exe を作ります。
86
+
87
+ ビルド前イベントに `"ConsoleApp1.exe" "$(SolutionDir)."` と書きます。
88
+
89
+ 以上です。
90
+
91
+ 名前は適当に変更し、フルパスで記述してください。
92
+
93
+
94
+
95
+ なお、引数を `"$(SolutionDir)"` にすると失敗しました。
96
+
97
+ 面倒なので最後に `.` をつけることで対応していますが、気になるなら直してください。