2

私は Wordpress を使用してブログを運営しており、最近になってSCMを大いに支持するようになりました。私は本当に自分のサイトを subversion に入れたいと思っています (それは私が今使っているもので、おそらく git は後で来るでしょう) が、それを行う正しい方法はまだ思いつきません。基本的に、私のリポジトリは現在、「実装」ディレクトリと「リソース」ディレクトリでセットアップされており、最終的にライブ サイトに公開されるものを保持する実装があります。明らかな理由により、サーバーにアップロードせずにサイトをローカルでプレビューできるようにしたいと考えています。ただし、これを行うには、Wordpress を実際にローカルにインストールする必要があることがわかりました (リモート サイトをローカル ボックスにコピーするだけではありません)。これは、Wordpress.org で教えてくれました。

これにより、ローカルサイトを時々アップグレードする必要があるため、インストールで SCM を使用できるという問題が発生しますが、外部システムがリポジトリをいじっているため、何が起こっているのかを追跡できないため、Subversion との不整合が発生します。構造。それはうまくいきません。

私の最初の傾向は、テーマ情報だけを SCM しようとすることです。これは実際に私が「所有」する唯一のものであり、他のすべては実際には私のプラットフォームの一部に過ぎないためです (実際には Apache や PHP と同じです)。しかし、それは私の理解が崩壊するところです。そのディレクトリ構造の一部のみを選択的に SCM するにはどうすればよいですか? また、現在使用している Wordpress の構成を維持するにはどうすればよいですか?

とにかく、他の人がこれに取り組んでいると確信しており、その解決策はおそらく Wordpress に似た多くのアプリ (Drupal、phpBB、phpMyAdmin など) に適用できます。それで、どうやってそれをしますか?

4

4 に答える 4

4

実際にはそれほど難しいことではありませんが、ここでいくつかの提案に分けます。あなたが説明しているのは、多かれ少なかれ「ベンダードロップ」ディレクトリです。これは基本的にSVNでコードを維持する場所ですが、内容が出てきたら新しいものに置き換えます。

最初にすべきことは、空のディレクトリです。SVNリポジトリを設定してから、空のディレクトリにSVNチェックアウトを実行します(非表示の.svnディレクトリが追加されることを除いて、まだ空です)。次に、ここに通常どおりwordpressをインストールしてから、そのファイルをsvnに追加します。おそらく「svnadd*」だけでもかまいませんが、注意して、バージョン管理したくないものはすべて削除してください(該当する場合は、uploads / temp / cacheディレクトリ)。必要に応じて、svn:ignoreプロパティを使用して、特定のディレクトリまたはファイルタイプを無視するように指示することもできます。「svnstat」を実行して、チェックインされる内容などを表示します。すべてが正常になったら、コミット(svn commit)して、そこから作業を開始します。これで、SVNにwordpressの基本インストールができました。

作業して変更を加えるときは、それらをコミットします。

アップグレードするときは、持っているものの上にワードプレスを置き換えるだけです。ディレクトリを置き換えるときは、ディレクトリ全体ではなく、内容を置き換えるようにしてください。Subversionを台無しにするので、すべてのフォルダーの非表示の.svnフォルダーを失いたくありません。svnstatやsvndiffを実行して、何が変更されたか、そしてほとんどの場合、新しく追加されたものを把握します。この時点で、再度コミットできます。

本番サイトにデプロイするには、svnエクスポートを実行するか、Webディレクトリへの定期的なチェックアウトを実行します。チェックアウトを行う場合は、展開の準備ができたときにのみ更新してください。

于 2008-09-23T00:45:20.733 に答える
3

これは私がテストしている方法です。セットアップには時間がかかりますが、(理論的には) 将来的にもインストールできるようにする必要があります。

WordPress の正しいインストール方法

また、プラグインの更新をプルするための svn:externals も参照してください。

svn:externals を使用して WordPress プラグインをインストールする

于 2009-02-17T16:41:13.340 に答える
1

私の最初の傾向は、テーマ情報をSCMすることです。これは、私が「所有する」唯一のものであり、他のすべては実際にはプラットフォームの一部にすぎないためです(ApacheやPHPとまったく同じです)。しかし、それは私の理解が崩壊するところです。そのディレクトリ構造の一部のみを選択的にSCMするにはどうすればよいですか?また、使用しているWordpressの構成を維持するにはどうすればよいですか?

それがまさに私がブログをバージョン管理する方法です。私はそれがうまくいくことを発見しました。一般的に、WordPressのファイルを編集している場合、それは間違っており、アップグレードの時期になると悲惨な状況に陥ります。

これを単純化するために、TortoiseSVNを使用します。Windowsエクスプローラーで/wp-content/ themes /ディレクトリに移動し、カスタムテーマのディレクトリを右クリックして、コンテキストメニューから[インポート]を選択しました。既存のファイルをすべてインポートした後、そのディレクトリでチェックアウトを実行し、すべてが設定されました。

于 2008-09-23T04:11:56.290 に答える
1

アップグレードの部分はそれよりも少し簡単になると思います。これは、2.5 と 2.6 の両方の最新バージョンと、WP の最先端のトランク リビジョンで行います。

Wordpress はすべてのものを Subversion リポジトリとして提供しているため、安定したタグの現在のリビジョンを取得することは、ブログ ディレクトリを作成してから行うのと同じくらい簡単です。

# svn co http://svn.automattic.com/wordpress/tags/2.6.2/ (replace the current rev here for the first check out).

アップグレードが利用可能になったら、ブログのディレクトリに移動して実行するだけです

#svn sw http://svn.automattic.com/wordpress/tags/2.6.3/ (or whatever wordpress rev you're updating to)

次に、 gregmacが言及しているように、本番サイトへのリリースは単なるエクスポートですが、 これはあなたの実際の質問に答えているとは思いません. どのディレクトリをタックするかについてのあなたの本能はかなり的を射ています (あなた自身の個人的なブログのもの - テーマ、pplugins - は wp-content にあるので、それを subversion に入れるだけでよいはずです) ですが、私は subversion に十分に精通していません。アップグレードのためにWordpressのリポジトリに依存しながら、ディレクトリを独自のリポジトリに配置する方法を教えてください. 私のサイト上のこれらのファイルの「SCM」は、wp-content ディレクトリのサーバー外のコピーです。

多分その観点から、gregmacの答えはあなたにとってよりうまくいくでしょう。

于 2008-09-23T01:05:54.710 に答える