Git фиксирует 500 файлов за раз?

У меня есть тысячи файлов, которые мне нужно зафиксировать, но у меня возникают проблемы с фиксацией их всех сразу. Как я могу автоматически зафиксировать 500 файлов за раз? Первые 500 файлов должны иметь сообщение о фиксации «Начальная фиксация, часть 1», следующие 500 — «Начальная фиксация, часть 2» и так далее. Я использую Windows, если это имеет значение.


person Keavon    schedule 15.07.2015    source источник


Ответы (2)


Я ничего не вижу в документации git о добавлении определенного количества файлов. Если это возможно, это было бы круто.

Что вы можете сделать, так это разбить вашу фиксацию на более мелкие коммиты несколькими разными способами, которые могут быть более значимыми, чем произвольное число.

Вы можете зафиксировать все файлы с определенным расширением:

$ git add *.rb
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        new file:   a.rb
        new file:   b.rb
        new file:   y.rb
        new file:   z.rb

Вы можете зафиксировать файлы по каталогу:

$ git add first_dir/

Или (наименее значимо) вы можете зафиксировать все файлы из первой половины алфавита (после второй половины):

$ git add [a-j]*
$ git status                                                                                                                                               
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        new file:   a.rb
        new file:   b.rb

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        y.rb
        z.rb

Есть много способов разбить большой коммит — я бы порекомендовал тот, который наиболее логичен для ваших файлов.

person Jake Worth    schedule 21.07.2015

Если вы хотите использовать фиксацию в стиле командной строки, я рекомендую посмотреть ответ janos здесь. Это должно сделать все это в одном коммите, но это даст вам хорошую основу, если вы хотите, чтобы они были разделены. На этом сайте есть хорошее описание того, как использовать git, если вам нужно, чтобы они были отдельными коммитами.

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

person UberAffe    schedule 15.07.2015
comment
Даже если ссылки, на которые вы ссылались, отвечают на вопрос OP, пожалуйста, включите в свой ответ ключевые детали или пример кода. - person UnknownOctopus; 15.07.2015
comment
Это был бы комментарий, если бы я мог сделать его одним. вам нужно больше очков репутации, чтобы прокомментировать, чем вы должны ответить, но это все еще была актуальная информация, которую, как я думал, они должны были иметь. - person UberAffe; 15.07.2015