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

質問編集履歴

4

typo

2016/09/09 05:52

投稿

Chironian
Chironian

スコア23274

title CHANGED
File without changes
body CHANGED
@@ -98,4 +98,4 @@
98
98
  そこで、一旦無効化して使った場合、無効化以前へ戻すことができませんでした。
99
99
  これでは意味がないです。
100
100
 
101
- 以上により、私には使えないと判断しました。(使えそうと報告していたで訂正まで。)
101
+ 以上により、私には使えないと判断しました。(使えそうと報告していたで訂正まで。)

3

追記

2016/09/09 05:52

投稿

Chironian
Chironian

スコア23274

title CHANGED
File without changes
body CHANGED
@@ -84,4 +84,18 @@
84
84
  しかも、有り難いことにGPLv3での配布でした。GitHubからダウンロードできました。
85
85
 
86
86
  バージョン3.02をWindows+BitNami環境で使ってみました。UnDoやRollBackはうまく動きませんでしたが、Gitで直接resetすれば戻りました。また、Gitでのブランチ切り替えやマージも動作しました。別のブランチで行った2つの投稿がちゃんとマージされました。(びっくりです。)
87
- まだ若いソフトのようなので問題はそれなりにありそうですが、大事な部分はきちんと使えそうです。
87
+ まだ若いソフトのようなので問題はそれなりにありそうですが、大事な部分はきちんと使えそうです。
88
+
89
+ ---
90
+ 【追記】
91
+ VersionPressを運用してみましたが、結局使えないと判断しました。
92
+
93
+ ①データベース内にバイナリなテーブルを作る。
94
+ これが原因でWordMoveでpushできなくなります。
95
+ mysqldumpで保存後削除してpush→回復すれば行けるとは思います。
96
+
97
+ ②ちょっと修正する度にcommitする。
98
+ そこで、一旦無効化して使った場合、無効化以前へ戻すことができませんでした。
99
+ これでは意味がないです。
100
+
101
+ 以上により、私には使えないと判断しました。(使えそうと報告していたきで訂正まで。)

2

追記

2016/09/08 09:12

投稿

Chironian
Chironian

スコア23274

title CHANGED
File without changes
body CHANGED
@@ -62,4 +62,26 @@
62
62
  ```
63
63
 
64
64
  mysqldumpのパスはBitNamiがインストールする場所を前提としています。
65
- phpもワードプレスのプラグインも初めてなので、色々可笑しいかも。
65
+ phpもワードプレスのプラグインも初めてなので、色々可笑しいかも。
66
+
67
+ ---
68
+ 【追記】
69
+ 結局、mysqldumpされるものではGit管理できませんでした。
70
+
71
+ まず、リストアが異常に遅いです。これはWordMoveのオプションを参考にして数秒程度でリストアできるようになりました。
72
+ 次にテーブルが全て1行になってしまう問題が発生しました。Gitでマージする際に直ぐにコンフリクトしてしまいます。
73
+ mysqldump時に`-c --order-by-primary --skip-extended-insert`オプションを付けて投稿ごとに改行されるようになりました。
74
+
75
+ しかし、投稿にPRIMARY keyが記録され、別ブランチで生成した投稿に同じPRIMARY keyが割り当てられてしまいます。これがGitでコンフリクトします。
76
+ 手動で解決も不可能ではないですが、あまり現実的な気がしません。
77
+
78
+ ---
79
+ 再度、プラグインを探してみたところ、[VersionPress](http://mrlittlebig.com/blog/1032-2/)が見つかりました。(前回、結構探したのですが、ノイズが多すぎて見つからなかったようです。)
80
+
81
+ データベースの中身は、wordpress/wp-content/vpdb/の下に投稿毎にファイルを分けて保存され、しかも、投稿の改行も再現されてました。なのでGitのバージョン管理で期待通りにマージできそうです。
82
+
83
+ VersionPressが知らないPluginがデータベースへ保存しているデータ等はちゃんと管理できないかもしれませんが、そのような設定のマージが必要になるケースは稀でしょう。新しい方の上書きでコンフリクトを解決すれば概ねOKの筈です。
84
+ しかも、有り難いことにGPLv3での配布でした。GitHubからダウンロードできました。
85
+
86
+ バージョン3.02をWindows+BitNami環境で使ってみました。UnDoやRollBackはうまく動きませんでしたが、Gitで直接resetすれば戻りました。また、Gitでのブランチ切り替えやマージも動作しました。別のブランチで行った2つの投稿がちゃんとマージされました。(びっくりです。)
87
+ まだ若いソフトのようなので問題はそれなりにありそうですが、大事な部分はきちんと使えそうです。

1

追記

2016/08/24 07:21

投稿

Chironian
Chironian

スコア23274

title CHANGED
File without changes
body CHANGED
@@ -15,4 +15,51 @@
15
15
 
16
16
  ---
17
17
  この辺の情報をネットで見つけることができなかったのですが、WordMoveの設定ファイルを見るとGitのファイル群を同期から外すようデフォルトで設定されているので、WordMoveとGitでWordpressのデータを管理している人はそこそこ居るはずなのです。なので、きっと同じ問題を既に解決している人が居るはずなのですが、見つけることができません。
18
- ヒントだけでもぜひ教えて下さい。
18
+ ヒントだけでもぜひ教えて下さい。
19
+
20
+ ---
21
+ 【解決】
22
+ 下記プラグインで動作しました。
23
+
24
+ ```php
25
+ <?php
26
+ /*
27
+ Plugin Name: save data-base
28
+ Plugin URI:
29
+ Description: 投稿されたらデータベースを保存する
30
+ Version: 1.0.0
31
+ License: GPL2
32
+ */
33
+ function save_db($post_id, $post, $update)
34
+ {
35
+ if (wp_is_post_revision($post_id))
36
+ {
37
+ return;
38
+ }
39
+
40
+ $url=home_url('/');
41
+ $token=strtok($url, ":");
42
+ $token=strtok(":");
43
+ if ($token != "//localhost/")
44
+ {
45
+ return;
46
+ }
47
+
48
+ $dbHost = "ホスト名";
49
+ $dbUser = "ユーザ名";
50
+ $dbPass = "バスワード";
51
+ $dbName = "データベース名";
52
+
53
+ $filePath = ABSPATH."wp-content/";
54
+ $fileName = 'database.sql';
55
+ $mysqldump = ABSPATH."../../../mysql/bin/mysqldump ";
56
+ $command = $mysqldump.$dbName." --host=".$dbHost." --user=".$dbUser." --password=".$dbPass." > ".$filePath.$fileName;
57
+ system($command);
58
+ }
59
+ add_action('save_post', 'save_db', 10, 3);
60
+
61
+ ?>
62
+ ```
63
+
64
+ mysqldumpのパスはBitNamiがインストールする場所を前提としています。
65
+ phpもワードプレスのプラグインも初めてなので、色々可笑しいかも。