Как окончательно игнорировать файл во всех подкаталогах через.gitignore

Я знаю, что есть много повторяющихся вопросов, но я полностью сбит с толку. Я должен признать, что я совершенно новичок в Git. Я использую RabbitVCS, однако я редактирую файл.gitignore, используя gedit вручную. Вот что я сделал:

  1. Я создал хранилище в Github.
  2. Я клонировал его на своем локальном компьютере, используя RabbitVCS.
  3. Я вставил все файлы и папки проекта в хранилище.
  4. Я создал .gitignore файл в корне хранилища, который включает в себя этот шаблон: *~,

Я еще ничего не передал.

Я хочу игнорировать все ~ и такие другие временные файлы в корне и подкаталогах. Он игнорирует все файлы в корне, но не влияет на подкаталоги. Когда я хочу зафиксировать с помощью RabbitVCS, я вижу их в окне фиксации.

Я сбиваю с толку, потому что в Bazaar мы сначала добавляем файлы, затем фиксируем их. Но это Git, кажется, мы должны просто добавить новые файлы! Это правильно?

Что я делаю неправильно? я должен совершить сначала?

1 ответ

Из руководства пользователя gitignore:

Символ "**", за которым следует косая черта, означает совпадение во всех каталогах. Например, "** / foo" соответствует файлу или каталогу "foo" в любом месте, так же, как шаблон "foo". "**/foo/bar" соответствует файлу или каталогу "bar" в любом месте, которое находится непосредственно в каталоге "foo".

Как пишет Ян Худек, вы можете просто использовать *~:

$ mkdir test
$ cd test
$ git init
Initialized empty Git repository in /tmp/test/.git/
$ echo '*~' > .gitignore
$ mkdir -p some/deep/directory
$ touch some/deep/directory/test.txt
$ touch some/deep/directory/test.txt~
$ git add some/deep/directory/test.txt*
The following paths are ignored by one of your .gitignore files:
some/deep/directory/test.txt~
Use -f if you really want to add them.
fatal: no files added
Другие вопросы по тегам