質問編集履歴
4
質問内容に追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
・OSはWindows10 Proになります。
|
12
12
|
|
13
|
-
|
13
|
+
・処理に必要なファイルに関してはD:\Git\hook_test内にあります。
|
14
14
|
|
15
15
|
|
16
16
|
|
@@ -49,3 +49,41 @@
|
|
49
49
|
done
|
50
50
|
|
51
51
|
fi
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
upload.bat
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
@echo off
|
60
|
+
|
61
|
+
set WINSCPEXE_PATH="C:\Program Files (x86)\WinSCP\WinSCP.com"
|
62
|
+
|
63
|
+
set REMOTE_HOST=test@xx.xxx.xx.xxx
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
set LOCAL_DIR="D:\Git\hook_test"
|
68
|
+
|
69
|
+
set TARGET_DIR="/var/www/test/"
|
70
|
+
|
71
|
+
set TARGET_RESOURCE="update.xml"
|
72
|
+
|
73
|
+
set RESOURCE=%1
|
74
|
+
|
75
|
+
rem RESOURCE="test.xml"
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
|
82
|
+
|
83
|
+
%WINSCPEXE_PATH% %REMOTE_HOST% /script=.\upload.script /parameter %LOCAL_DIR% %TARGET_DIR% %TARGET_RESOURCE%
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
rm %LOCAL_DIR%\%TARGET_RESOURCE%
|
3
質問内容の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
#質問内容
|
2
2
|
|
3
|
-
現在SourceTreeのpre-commitを使用して、ファイルをコミットする時に特定のファイルがあった場合、そのファイルをリネームして別のファイルに書き換える処理を実装したいのだが、SourceTree上でコミットすると
|
3
|
+
現在SourceTreeのpre-commitを使用して、ファイルをコミットする時に特定のファイルがあった場合、そのファイルをリネームして別のファイルに書き換える処理を実装したいのだが、SourceTree上でコミットするとbash: upload.bat: No such file or directoryとエラー表示され、コミットされない。
|
4
|
+
|
5
|
+
|
4
6
|
|
5
7
|
pre-commitを.shにして、SourceTreeのターミナルで起動させると正常に動作した。
|
6
8
|
|
2
質問内容の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,11 +6,17 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
+
・OSはWindows10 Proになります。
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
|
9
15
|
#やりたいこと
|
10
16
|
|
11
17
|
pre-commit内でバッチファイルを起動させたい。
|
12
18
|
|
13
|
-
|
19
|
+
→下記にあるバッチファイルの呼び出し方が正解かわからない
|
14
20
|
|
15
21
|
|
16
22
|
|
1
質問内容と質問題名を変更
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
[SourceTree]
|
1
|
+
[SourceTree]pre-commit内でバッチファイルを呼び出したい
|
test
CHANGED
@@ -1,20 +1,14 @@
|
|
1
1
|
#質問内容
|
2
2
|
|
3
|
-
現在SourceTreeのpre-commitを使用して、ファイルをコミットする時に特定のファイルがあった場合、そのファイルをリネームして別のファイルに書き換える処理を実装したいのだが、うまくいかない。
|
3
|
+
現在SourceTreeのpre-commitを使用して、ファイルをコミットする時に特定のファイルがあった場合、そのファイルをリネームして別のファイルに書き換える処理を実装したいのだが、SourceTree上でコミットするとうまくいかない。
|
4
|
+
|
5
|
+
pre-commitを.shにして、SourceTreeのターミナルで起動させると正常に動作した。
|
4
6
|
|
5
7
|
|
6
8
|
|
7
9
|
#やりたいこと
|
8
10
|
|
9
|
-
|
11
|
+
pre-commit内でバッチファイルを起動させたい。
|
10
|
-
|
11
|
-
→git logの結果を変数に格納する方法が知りたい。
|
12
|
-
|
13
|
-
→MSN=${git log -1 --name-only develop}を使用するとファイル名だけでなくコミットIDなど余計にな情報まで入ってしまう。
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
コミット対象のファイルの中に特定のファイルがあるかの判定
|
18
12
|
|
19
13
|
|
20
14
|
|
@@ -30,37 +24,19 @@
|
|
30
24
|
|
31
25
|
if [ $? -eq 0 ]; then
|
32
26
|
|
33
|
-
MS
|
27
|
+
MSG=$(git log -1 --name-only --pretty=format:"%h" | grep 'strings' | grep '.xml')
|
34
28
|
|
35
29
|
|
36
30
|
|
37
|
-
for i in MSG;do
|
31
|
+
for i in ${MSG[@]};do
|
38
32
|
|
39
|
-
while read word; do
|
40
|
-
|
41
|
-
word_a=( `echo ${MSG} | tr -s '\t' ' '`)
|
42
|
-
|
43
|
-
echo ${#word_a[i]}
|
44
|
-
|
45
|
-
//strings.txtがコミットされていたら、リネーム対象
|
46
|
-
|
47
|
-
if [ `echo ${word_a[i]} | grep 'strings' | grep '.txt'` ]; then
|
48
|
-
|
49
|
-
echo ${word_a[i]} | grep ^# > /dev/null && continue
|
50
|
-
|
51
|
-
echo ${word_a[i]} | grep '^\s*$"' > /dev/null && continue
|
52
|
-
|
53
|
-
read -p "Hit Enter:"
|
54
|
-
|
55
|
-
echo "
|
33
|
+
echo "Update"
|
56
34
|
|
57
35
|
cd ../../
|
58
36
|
|
59
|
-
|
37
|
+
|
60
38
|
|
61
|
-
|
39
|
+
`bash upload.bat $i`
|
62
|
-
|
63
|
-
fi
|
64
40
|
|
65
41
|
done
|
66
42
|
|