3 ответов:
от IntelliJ документация:
в интеграции Git, в дополнение к стеллажам и снятию стеллажей, поддерживаются соответственно "stashing" и "unstashing". Эти функции имеют много общего, единственное различие заключается в том, как патчи генерируются и применяются.
- патчи со скрытыми изменениями генерируются самим Git. Чтобы применить их позже, вам не нужна IntelliJ IDEA.
- патчи с отложенными изменениями создаются IntelliJ идея. Обычно они также применяются через IDE. Применение отложенных изменений вне IntelliJ IDEA также возможно, но требует дополнительных шагов.
Они очень похожи, за исключением:
- вы не можете использовать shelve вне IDE, потому что это функция Intellij.
- git stash работает только со всем рабочим каталогом и индексом. Полка IntelliJ может работать с отдельными файлами и списками изменений (еще одна функция IntelliJ). Как видите, например,здесь, иногда это необходимо.
- идея имеет лучшую встроенную поддержку для полки. Работа с git stash более проста. В в частности, вы можете отложить\распаковать свои изменения или просмотреть отложенные файлы из окна средства управления версиями.
кроме того, IMHO, shelve работает немного быстрее, особенно в большом проекте, когда было изменено много файлов.
посмотреть документация для получения дополнительной информации.
одно явное преимущество, которое имеет стеллаж Intellij над обычным тайником Git, заключается в том, что с помощью Shelve вы можете сохранять изменения, принадлежащие нескольким репозиториям, в одном списке изменений. Используя stash, вам нужно будет хранить/не хранить в каждом РЕПО индивидуально. Это очень полезно в большом проекте с несколькими модулями (каждый из которых имеет свое собственное РЕПО), где определенная работа функции может разрезать несколько модулей (и, следовательно, несколько РЕПО)
Comments