Цитата:
Если внесенных изменений не достаточно для полноценного комита, то логично сделать git stash, чтобы потом к ним вернуться. В тот момент когда ты делал другой таск в твою ветку что-то запушили. И для того чтобы работать с актуальной версией нужно сделать pull и накатить свои изменения (git stash apply). Тоже самое можно сделать с помощью git stash pop. Но вот не задача, ты случайно закоммитил файл c каким-то багом, и хочешь убрать из его ветки, для этого есть git cherry-pick. А git revert -nm 1 ... нужно для того чтобы вырвать пуш из мержда. И вот ты вернулся к своему таску, все сделал, теперь можно сделать git stash drop, чтобы удалить из стека stash |
monolithed, разве не было бы легче просто вести изменения в свою ветку.ю и иметь track под рукой?
... сколько бы я ни читал, всё равно не могу понять работу cherry-pick. Не могли бы вы обьяснить простым языком, зачем она нужна? |
Цитата:
master workspace Сейчас: master alpha feature Если мне нужно пофиксить какой-то баг или ввести новую фичу, то я создаю ветку feature-1 (постфикс инкрементируется), тестирую, если все гуд, то вливаю в alpha. Когда протестирую в альфе, переношу в мастер и удаляю feature alpha нужна потому, что параллельно может делаться несколько фич и если их сразу мерджить в мастер, то все может взорваться. У меня стандартный workflow выглядит примерно так: ... git checkout alpha git checkout -b feature-8628 git pull origin alpha ... git status git commit -am 'feature-8628: description' git push origin feature-8628 git log -p git checkout alpha ... git diff HEAD feature-8628 git merge origin/feature-8628 git status git commit -a git push origin alpha git log --graph git checkout master git pull origin master git merge alpha git diff --staged git commit -a git branch -d feature-8628 git push origin master git log --stat PS: Для меня такая структура оптимальна, однако для многопользовательской работы над ответственным проектом не помешает еще одна промежуточная ветка test Цитата:
Я лично использую JetBrains YourTrack, в котором и создаю таски Цитата:
|
monolithed, давай еще раз
Код:
# надо исправить критический баг Цитата:
|
спасибо, очень просто и в то же время подробно. теперь наконец-то стало понятно, что такое cherry-pick.
карма не плюсюется ( Цитата:
|
Цитата:
$ git fetch fork $ git cherry-pick ... |
Цитата:
|
Цитата:
Код:
git cherry-pick -nm 1 abcdef # применяешь коммит (из другой ветки?) И еще там был вопрос: можно сказать, что там должна быть единица, не смотря в журнал? |
Цитата:
Цитата:
И в какой-то момент стало понятно что ветку beta нужно вырвать из итерации. Сделать это безопасно можно так: git revert -nm 1 hash Цитата:
|
значит получается так:
Код:
# ВНЕЗАПНО! надо исправить критический баг Код:
git init |
Часовой пояс GMT +3, время: 02:31. |