0

特定の開発環境で git を使用したい。メタトレーダー 4.

開発ディレクトリの構造は固定されており、次のタイプです。

MQL4
  Expert
  Files
  imagery
  Include
  Indicators

一部のディレクトリには、デフォルトでサンプル ファイルが付属しています。私の考えは、これらのディレクトリの下にディレクトリを作成し、.gitignore で示すために、これらのディレクトリのみを git で考慮する必要があることを望みます。

MQL4
  Expert
    MyGITExperts
  Files
  imagery
  Include
    MyGITInclude
  Indicators
    MyGITIndicators

私の考えは正しいですか?より良いものはありますか?これらとこれらのサブフォルダーのみを処理する必要があることを git に伝えるにはどうすればよいですか?

4

2 に答える 2

4

はい、方法があります。

git docs の例から、特定のディレクトリ foo/bar を除くすべてを除外します (/* に注意してください - スラッシュなしでは、ワイルドカードは foo/bar 内のすべても除外します):

$ cat .gitignore
# exclude everything except directory foo/bar
/*
!/foo
/foo/*
!/foo/bar

http://git-scm.com/docs/gitignore

あなたの場合、MQL4 がプロジェクトのルート (.git ファイルがある場所) 内にあると想定しています。

/*
!/MQL4
/MQL4/*
!/MQL4/Expert/MyGITExperts
!/MQL4/Files
!/MQL4/imagery
!/MQL4/Include/MyGITInclude
!/MQL4/Indicators/MyGITIndicators

そのようなフォルダが多数ある場合、これは一般的に悪い考えです

于 2015-02-01T08:28:45.740 に答える
2

ドキュメントから、

gitignore - 無視する意図的に追跡されていないファイルを指定します

そのため、最初に追跡したくないファイルに言及し、次に管理したいファイルを含める必要があります。

たとえば、他のディレクトリ/ファイルがいくつかあるとしましょう。最初にそれらを無視してから、ディレクトリを明示的Include/ に無視解除する必要がありますInclude/MyGITInclude/

/Include/*
!/Include/MyGITInclude/

このようにして、サブディレクトリとそのファイルを含むすべての MyGITInclude/ ディレクトリを取得します。他のディレクトリ/サブディレクトリについても同じことを行います。

乾杯!

于 2015-02-01T09:03:32.410 に答える