Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
subjects:programming:git [2023/02/22 19:36] ¶ [commit] |
subjects:programming:git [2023/05/01 19:29] ¶ Объединение коммитов |
||
---|---|---|---|
Строка 84: | Строка 84: | ||
* ''git add .'' -- Добавляет файлы ''M'', ''D'', ''?''. | * ''git add .'' -- Добавляет файлы ''M'', ''D'', ''?''. | ||
- | * ''-all'', ''-A'' -- Эти варианты эквивалентны и добавляют ''M'', ''D'', ''?''. Без точки — из всей рабочей области. С точкой — только текущий путь: ''git add -A .'' = ''git add .'' + ''git add -u .'' | + | * ''-all'', ''-A'' -- Эти варианты эквивалентны и добавляют ''M'', ''D'', ''?''. Без точки — из всей рабочей области. С точкой — только текущий путь: ''git add -A .'' = ''git add .'' + ''git add -u .'' \\ <code bash>git add .</code> |
* ''-update'', ''-u'' -- Git обновляет (update) статус уже отслеживаемых файлов т.е. M, D. | * ''-update'', ''-u'' -- Git обновляет (update) статус уже отслеживаемых файлов т.е. M, D. | ||
* ''git add *'' -- Этот синтаксис лучше не использовать, т.к. он пытается добавить ''M'', ''?'', ''!'', причём последнее приводит к ошибке. | * ''git add *'' -- Этот синтаксис лучше не использовать, т.к. он пытается добавить ''M'', ''?'', ''!'', причём последнее приводит к ошибке. | ||
Строка 98: | Строка 98: | ||
* ''-m "text"'' -- Комментируем коммит прямо из командной строки вместо текстового редактора. \\ <code bash>git commit -m "Название коммита"</code> | * ''-m "text"'' -- Комментируем коммит прямо из командной строки вместо текстового редактора. \\ <code bash>git commit -m "Название коммита"</code> | ||
* Чтобы изменить имя последнего коммита, достаточно ввести: \\ <code bash>git commit --amend -m "Новое название коммита"</code>. Для изменения имени других коммитов, нужно сделать: \\ <code bash>git commit --amend -c <commit ID></code> | * Чтобы изменить имя последнего коммита, достаточно ввести: \\ <code bash>git commit --amend -m "Новое название коммита"</code>. Для изменения имени других коммитов, нужно сделать: \\ <code bash>git commit --amend -c <commit ID></code> | ||
+ | |||
+ | ==== Переименование файла ==== | ||
+ | Переименовывать или перемещать файлы и папки нужно из ''git''. Подробнее см. справку. | ||
+ | <code bash> | ||
+ | $ git mv old_filename new_filename | ||
+ | </code> | ||
+ | |||
+ | ==== Объединение коммитов ==== | ||
+ | * Объединение последних **2** (//можно использовать любое разумное целое число//) коммитов в один: \\ | ||
+ | <code bash> | ||
+ | $ git rebase -i HEAD~2 | ||
+ | </code> | ||
+ | * **Откроется** текстовый редактор, в котором первые две строки соответствуют последним двум коммитам. | ||
+ | * В начале каждой строки стоит слово ''pick''. Вам **необходимо** изменить слово ''pick'' на букву ''s'' у второй строки. Это означает, что данный коммит будет объединен с предыдущим коммитом -- это написано в комментариях. | ||
+ | * **Сохраните** изменения и закройте редактор. | ||
+ | * Снова **откроется** редактор, в котором вам предлагается ввести сообщение к коммиту, который и является объединением. Отредактируйте сообщение к коммиту, **сохраните** изменения, и закройте редактор. | ||
+ | |||
==== Разное ==== | ==== Разное ==== | ||
* ''git rm FILE1 FILE2'' -- Удалить файл(ы) из индекса и дерева одновременно. | * ''git rm FILE1 FILE2'' -- Удалить файл(ы) из индекса и дерева одновременно. |