Я завжди десь зациклююся на цьому навіть після того, як неодноразово повертаюся до цього питання. Я придумав детальний процес робити це поетапно:
Спочатку просто використовуйте git add
для додавання фактичного вмісту.
На ньому будуть показані відповідні файли, додані до індексу, а всі інші ще не збережені. Це допомагає виконувати .gitignore
крок за кроком.
$ git add wp-content/themes/my-theme/*
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-admin/
wp-content/plugins/
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
...
wp-includes/
...
Додайте тимчасовий DUMMY.TXT
файл у свій каталог:
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-admin/
wp-content/plugins/
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
...
wp-content/themes/my-theme/DUMMY.TXT <<<
...
wp-includes/
...
Наша мета зараз - побудувати правила таким чином, щоб це DUMMY.TXT
було єдиним, що все ще відображається як Неназваний, коли ми закінчимо.
Почніть додавати правила:
.gitignore
/*
По-перше, це просто ігнорувати все. Файли, що не відслідковуються, мають бути зникли, лише індексовані файли мають відображатись:
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Додайте перший шлях у шлях wp-content
/*
!/wp-content
Тепер файли Untracked знову з’являться, але мають лише wp-content
вміст
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-content/plugins/
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
..
Ігноруйте все в першому режимі /wp-content/*
і не ігноруйте!/wp-content/themes
/*
!/wp-content
/wp-content/*
!/wp-content/themes
Тепер файли Untracked ще більше звузяться до лише wp-content/themes
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-content/themes/twentyeleven/
wp-content/themes/twentytwelve/
..
Повторіть процес, поки цей фіктивний файл єдиний, який все ще відображається як Немає:
/*
!/wp-content
/wp-content/*
!/wp-content/themes
/wp-content/themes/*
!/wp-content/themes/my-theme
$ git status
Changes to be committed:
new file: wp-content/themes/my-theme/index.php
new file: wp-content/themes/my-theme/style.css
Untracked files:
wp-content/themes/my-theme/DUMMY.TXT
**
підстановка працює лише, якщо у вас немає косої риски, див. rezerthought.wordpress.com/2011/07/19/…