Давайте рассмотрим некоторые типичные ситуации, с которыми вы можете столкнуться при использовании git; ты поблагодаришь меня позже. 😉

Как вернуться к n-му коммиту?

  • Используйте git log, чтобы найти хэш коммита N-го коммита.
  • Запустите git checkout <commit-hash>, чтобы проверить этот конкретный коммит.
  • Если вы хотите создать новую ветку, которая начинается с этой фиксации, запустите git checkout -b <branch-name>

Как переместить определенные коммиты из ветки А в ветку Б?

  • Используйте git log, чтобы найти хэш последнего коммита, который вы хотите переместить.
  • Беги git checkout <branch-a>
  • Запустите git cherry-pick <last-commit-hash>, чтобы применить последний коммит к текущей ветке.
  • Повторите команду cherry-pick для каждого коммита, который вы хотите переместить.
  • Запустите git checkout <branch-b> в ветку оформления заказа B.
  • Запустите git merge <branch-a>, чтобы объединить изменения в ветку B.
  • Разрешите любые конфликты, которые могут возникнуть во время слияния. Вуаля, все готово!!

Как отправить коммит в новую ветку одной командой?

Обычно люди создают новую ветку, проверяют ее, выполняют git push и настраивают вышестоящую ветку для отправки своих изменений на удаленный сервер.

Вместо этого вы можете запустить git push -u origin <new-branch-name>, чтобы отправить локальные коммиты в текущей ветке на удаленный. Это так удобно, верно?

Как удалить все локальные ветки?

Иногда вы путаетесь с оставшимися ветвями и хотите очистить их все, если это так, запустите git branch | grep -v “main” | xargs git branch -D, чтобы удалить все ветки, кроме основной.

Как переименовать ветку?

Когда-нибудь создавал ветку и хотел ее переименовать так как у вас опечатка, то эта команда для вас git branch -m <old-branch-name> <new-branch-name>

Как спрятать несколько изменений и получить эти изменения?

Чтобы спрятать несколько изменений в Git, вы можете просто использовать команду git stash несколько раз,

  • Чтобы получить определенный тайник, вы можете использовать команду git stash apply с идентификатором тайника, а идентификатор тайника можно найти, выполнив команду git stash list.
  • Чтобы применить второй тайник в списке, вы можете запустить: git stash apply stash@{1} и это применит второй тайник и восстановит изменения в вашем рабочем каталоге.
  • Вы также можете спрятать свое имя, используя git stash save -m “my-stash” . Это создаст новый тайник с именем my-stash, который вы можете получить с помощью git stash apply stash@{my-stash}

Как создать патч в git?

Если вы когда-нибудь хотели скопировать свою работу, чтобы отправить ее кому-то еще, тогда git patch станет вашим другом.

  • git format-patch -1 <commit-hash> создает файл исправления для конкретной фиксации
  • Чтобы применить патч, запустите git apply <.patch file>

Как быть продуктивным в GIT?

  • Используйте .gitconfig, чтобы максимизировать свою производительность в git, вы можете настроить gitconfig для персонализации команд git в соответствии с вашими потребностями, например, добавьте приведенную ниже конфигурацию в файл ~/.gitconfig, чтобы всегда выполнять перебазирование при извлечении коммитов с удаленного сервера.
[pull]
 rebase = true
  • Если вы используете терминал oh-my-zsh, у вас будет возможность использовать псевдонимы git, такие как gst, что является сокращением от git status ga для git add. Есть много других псевдонимов команд, которые вы можете использовать для ссылки на эту замечательную шпаргалку.

Надеюсь, это было информативно, вот бесплатная шутка для вас: «Проблема с шутками о git в том, что у каждого есть своя версия». 😜

Справка: Сладкий Шарма