DEO>> можно пример?

DEO>> вот у меня b1 содержит файлы a b c d b2 содержит файлы a b c d e f

DEO>> находясь в b2 я меняю файл a, хочу чтобы коммит ушел не только в
DEO>> бранч b2, но и в бранч b1, но переключать дерево на b1 мне нельзя
DEO>> (это конфиги работающей системы).

DS> т.е. коммит выполняется на работающей системе?  тогда cherry-pick надо
DS> делать в другом клоне или рабочей копии.  например,

DS> ad...@server $ git commit -m "bla-blah-blah"
DS> ad...@server $ git push remote-repo

DS> u...@ws $ git pull remote-repo
DS> u...@ws $ git checkout b1
DS> u...@ws $ git cherry-pick <commit>
DS> u...@ws $ git push remote-repo

DS> ad...@server $ git pull remote-repo

DS> В данном случае server - рабочая система, ws - какая-то другая машина,
DS> remote-repo - общий remote, откуда pull-ятся и куда push-атся изменения.
DS> Т.е. один и тот же репозиторий, одинаково называющийся в обоих рабочих
DS> репозиториях.

DS> С временной рабочей копией процесс может выглядеть таким образом:

DS> ad...@server $ git commit -m "blah-blah-blah"
DS> ad...@server $ mkdir /tmp/tmp-repo && pushd /tmp/tmp-repo
DS> ad...@server $ export GIT_DIR=/path/to/repo/.git
DS> ad...@server $ git checkout b1
DS> ad...@server $ git reset --hard
DS> ad...@server $ git cherry-pick <commit>
DS> ad...@server $ git checkout b2
DS> ad...@server $ unset GIT_DIR
DS> ad...@server $ popd && rm -rf /tmp/tmp-repo

ну да, у меня в таком примерно ключе написана работа, только вместо
cherry-pick используется checkout -m в том же временном дереве. я
собственно искал вариант как избавиться от временного дерева

жаль что не нашлось красивого способоа :(

-- 

. ''`.                               Dmitry E. Oboukhov
: :’  :   email: [email protected] jabber://[email protected]
`. `~’              GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537


--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Ответить