質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

Q&A

解決済

Gitでローカル固有のファイル(configファイル等)の取り扱い

msx2
msx2

総合スコア174

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

2回答

0グッド

0クリップ

5215閲覧

投稿2016/05/11 08:30

Git(Bitbucket)を使ってソース管理をしています。

configファイルといった環境固有の設定についてはリモートの共有リポジトリで雛形的なものを管理しておき、それぞれのローカルでは編集して使いたいです。

ローカルの変更はリモートリポジトリに反映させたくないのですが、どうすればいいでしょうか?

.gitignoreファイルに記述するとファイル自体がなくなってしまいます。
実現したいのはリモートにもローカルにも存在し、ローカルでの変更を無視させることです。

こういう運用は可能でしょうか?
よろしくお願いします。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答2

3

ベストアンサー

良く使われている方法としては、config.sample などの「ファイル名.sample」で、雛形として git で、バージョン管理をして、実際の設定ファイルの config は、.gitignoreファイルに記載して、git に登録されないようにすることが多いとおもいます。

投稿2016/05/11 09:27

CHERRY

総合スコア24706

KiyoshiMotoki, msx2, ngyuki👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

msx2

2016/05/11 14:40

なるほど!Gitの機能にこだわって考えていましたが、雛形ファイルを配布する運用がシンプルでわかりやすいですね。 この方法でいこうと思います、ありがとうございました。

1

下記の記事のように assume-unchanged や skip-worktree でローカルの変更を無視させることができます。

http://qiita.com/usamik26/items/56d0d3ba7a1300625f92

が、CHERRY さんが言われているような運用の方が無難だと思います。

あるいは、config.dist みたいなファイルをリポジトリに含め、config.gitignore で除外しておく、ローカルでは config.dist をコピーして config を作成し、アプリがコンフィグを読むときは下記の順で最初に見つかったものを読む。

  • config
  • config.dist

このようにすることで、config.dist がデフォルト設定で、変更したいときは config を使う。みたいにもできるかと思います。

投稿2016/05/11 13:44

ngyuki

総合スコア4510

msx2👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

msx2

2016/05/11 14:50

ご回答ありがとうございました。 リンク先の記事もとても参考になりました。 設定ファイルだと確かに雛形ファイルを配布する運用が無難ですね。 distファイルを作ってconfigと見つかった方を読むやり方も便利だと思います。 今回はズバリの回答を先にして頂いたCHERRYさんをベストアンサーにさせてもらいましたが、とても勉強になりました。 ありがとうございました!

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。