teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

5

タグ追加

2018/06/11 09:06

投稿

jona
jona

スコア8

title CHANGED
File without changes
body CHANGED
File without changes

4

スクリプト修正

2018/06/11 09:06

投稿

jona
jona

スコア8

title CHANGED
File without changes
body CHANGED
@@ -48,5 +48,5 @@
48
48
  #-----------------------------------------------------------
49
49
  #Unityから実行させると下記のコミット処理だけ動作しない↓
50
50
 
51
- # svn ci -m "なぜかコミットできない"
51
+ svn ci -m "なぜかコミットできない"
52
52
  ```

3

#!/bin/bashの追加

2018/06/11 06:34

投稿

jona
jona

スコア8

title CHANGED
File without changes
body CHANGED
@@ -39,13 +39,14 @@
39
39
 
40
40
  Commit.sh↓
41
41
  ```ここに言語を入力
42
+ #!/bin/bash
42
43
  cd Assets/Commit
43
44
  svn st | grep '^!' | awk '{print $2}' | xargs svn delete
44
45
  svn st | grep '^?' | awk '{print $2}' | xargs svn add
45
46
 
46
47
  #ここまでは実行できる↑
47
48
  #-----------------------------------------------------------
48
- #Unityから実行させると下記のコミット処理だけ動作しない
49
+ #Unityから実行させると下記のコミット処理だけ動作しない
49
50
 
50
51
  # svn ci -m "なぜかコミットできない"
51
52
  ```

2

ソースコメント追加

2018/06/11 06:21

投稿

jona
jona

スコア8

title CHANGED
File without changes
body CHANGED
@@ -42,5 +42,10 @@
42
42
  cd Assets/Commit
43
43
  svn st | grep '^!' | awk '{print $2}' | xargs svn delete
44
44
  svn st | grep '^?' | awk '{print $2}' | xargs svn add
45
+
46
+ #ここまでは実行できる↑
47
+ #-----------------------------------------------------------
48
+ #Unityから実行させると下記のコミット処理だけ動作しない
49
+
45
50
  # svn ci -m "なぜかコミットできない"
46
51
  ```

1

svnコミットの実行をシェルスクリプト内で行うように変更

2018/06/11 06:16

投稿

jona
jona

スコア8

title CHANGED
File without changes
body CHANGED
@@ -1,27 +1,20 @@
1
1
  Unityメニューから指定したディレクトリ内のファイルを全てコミットする機能を作成しています。
2
- やり方としてはSystem.Diagnostics.Processを使用してバッュコマンドの実行を行っています
2
+ やり方としてはSystem.Diagnostics.Processを使用してシェルスクリプト(Commit.sh)を実行ています
3
3
 
4
- 下記のコードの問題としてコミット処理のみ何故か動作せず、ログ出力でもエラーが表示されないです。
4
+ 下記のコードの問題としてシェルスクリプト内のコミット処理のみ何故か動作せず、ログ出力でもエラーが表示されないです。
5
+ ターミナル上でCommit.shを実行するとコミット処理も含めて全て正常に処理が走ることは確認しています。
6
+ Commit.shはUnityプロジェクトのトップ、Assetsと同じ階層に配置しています。
5
7
  使い方が間違っている、こうするとコミットできるなど、分かる方が居ましたら是非回答をよろしくお願いします。
6
8
 
9
+ Unity内のソース↓
7
10
  ```ここに言語を入力
8
11
  // Unityメニューからコミット
9
12
  [MenuItem("Development/Commit")]
10
13
  private static void Commit()
11
14
  {
15
+ // Commit.shを実行
12
- string cmd = "";
16
+ cmd += "./Commit.sh;";
13
17
 
14
- cmd += "cd Assets/hoge;";
15
-
16
- // 削除されたファイルをsvn delete
17
- cmd += "svn st | grep '^!' | awk '{print $2}' | xargs svn delete;";
18
-
19
- // 追加されたファイルをsvn add
20
- cmd += "svn st | grep '^?' | awk '{print $2}' | xargs svn add;";
21
-
22
- // 差分をコミット
23
- cmd += "svn ci -m 'このコミットが動作しません';";
24
-
25
18
  DoBashCommand(cmd);
26
19
  }
27
20
 
@@ -42,4 +35,12 @@
42
35
  // ログ出力
43
36
  UnityEngine.Debug.Log(output);
44
37
  }
38
+ ```
39
+
40
+ Commit.sh↓
41
+ ```ここに言語を入力
42
+ cd Assets/Commit
43
+ svn st | grep '^!' | awk '{print $2}' | xargs svn delete
44
+ svn st | grep '^?' | awk '{print $2}' | xargs svn add
45
+ # svn ci -m "なぜかコミットできない"
45
46
  ```