На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (9) « Первая ... 2 3 [4] 5 6 ...  8 9 все  ( Перейти к последнему сообщению )  
> Как работают с git'ом?
    Бобёр, ты ведь про git squash?

    Добавлено
    В смысле, про git squash для бедных... :)
      Цитата
      git squash

      Мне скваш как то не понравился, есть шанс ошибиться, константу не ту поставить.
      Вообще патч в виде диффа бранчей, по мне так, будет потупее и понадёжнее.
        Цитата Бобёр @
        Мне скваш как то не понравился, есть шанс ошибиться, константу не ту поставить.
        Вообще патч в виде диффа бранчей, по мне так, будет потупее и понадёжнее.

        У меня в этом случае чуть другая техника. Я перед мёрджем делаю git reset --soft до нужного коммита (с которого хочу схлопнуть), потом делаю новый коммит всего добра, и в итоге - merge.
          Цитата Бобёр @
          делаем так:
          git checkout master
          git pull --rebase
          git checkout -b CLEAN_BRANCH_NAME
          git diff --binary CLEAN_BRUNCH_NAME...DEV_BRANCH_NAME_WITH_100500_INTERMEDIA_COMITS > my.patch
          git apply -3 my.patch
          git commit -m "my super feature"
          git push origin HEAD

          7 (!!!) действий для одного мерджа! Млять, люди, это же не нормально! :wall:
          В томже самом TFS мердж делается за пару кликов. Все просто и понятно. Я уж не говорю о том, что можно изменить 100 файлов, а закомитить 1 и работать дальше с веткой. Или замерджить только один changeset.
            Цитата Fester @
            7 (!!!) действий для одного мерджа! Млять, люди, это же не нормально!

            А за сколько действий в TFS ты можешь схлопнуть несколько коммитов в один (но жирный), который потом и замёржить?
            По факту в Git мердж делается двумя командами, которые тебе выше уже показали. :)
              Цитата
              7 (!!!) действий для одного мерджа

              Можно и за 6, только у нас в мастер коммитить нельзя.

              Цитата
              Млять, люди, это же не нормально!

              У меня все автоматизировано, так что не переживай :)

              Добавлено
              Цитата
              По факту в Git мердж делается двумя командами, которые тебе выше уже показали. :)

              Можно и одной, правда потом может быть чуть больно :).
              Сообщение отредактировано: Бобёр -
                Цитата Flex Ferrum @
                схлопнуть несколько коммитов в один (но жирный)

                зачем? :)

                Цитата Flex Ferrum @
                который потом и замёржить

                Мердж в TFS'е делается за пару кликов. Если хочешь замержить конкретные changeset'ы, то количество кликов увелисивается на количество changeset'ов + 1.

                Единственно, что не очень хорошо сделано - это поиск shelveset'ов...



                Цитата Бобёр @
                Можно и за 6, только у нас в мастер коммитить нельзя.

                Можно вообще не заморачиваться, слить 2 папки BeyondCompare'ом и закомитить все :) Получится 1-2 действия включая pull и никакого мерджа ;)
                  Цитата Fester @
                  зачем?

                  Затем, чтобы твои частые коммиты (а такое бывает, если работа растягивается надолго, и надо хранить промежуточные результаты где-нибудь в более надёжном месте, чем локальный диск) после мерджа в основую ветку выглядели как один, но жирный. Его и откатить, в случае чего, проще будет.
                    Цитата Flex Ferrum @
                    У меня в этом случае чуть другая техника. Я перед мёрджем делаю git reset --soft до нужного коммита (с которого хочу схлопнуть), потом делаю новый коммит всего добра, и в итоге - merge.
                    git reset --soft удаляет твою ветку с сохранинием измененных файлов?
                      Откатывает индекс, а файлы не трогает, да.
                        Цитата Flex Ferrum @
                        Откатывает индекс, а файлы не трогает, да.
                        А с веткой что происходит?
                        Цитата Flex Ferrum @
                        а такое бывает, если работа растягивается надолго, и надо хранить промежуточные результаты где-нибудь в более надёжном месте, чем локальный диск
                        Кстати постоянно с таким сталкиваюсь, и где ты хранишь промежуточные результаты? Отдельный удаленый форк заводишь, который потом подчищаешь?
                          applegame, пока не сделаешь git branch -d - ветка жива. А так, пушу ветку на сервер, а после мерджа - прибиваю. Ресет комнатам делается на локальной ветке перед мерджем.
                            Цитата Flex Ferrum @
                            Затем, чтобы твои частые коммиты (а такое бывает, если работа растягивается надолго, и надо хранить промежуточные результаты где-нибудь в более надёжном месте, чем локальный диск) после мерджа в основую ветку выглядели как один, но жирный. Его и откатить, в случае чего, проще будет.

                            Мердж - это и есть один жирный коммит. Зачем какие-то танцы с бубном?
                              Цитата Fester @
                              Мердж - это и есть один жирный коммит. Зачем какие-то танцы с бубном?

                              Не знаю, как в TFS, а в гите после мерджа в ветке, в которую ты мерджишь, оказывается вся твоя история коммитов из той ветки, которую мерджишь. Сделал 100500 коммитов с комментариями "Build fix", "Fix typo", "Temporary Interface Rename" - все они окажутся в целевой ветке. Вот чтобы всю эту историю не тащить и делают squash.
                                Цитата Flex Ferrum @
                                Вот чтобы всю эту историю не тащить и делают squash.

                                Ну т.е. сам себе придумал проблему, потом решил ее и выставил это решение как плюс системы :D
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (9) « Первая ... 2 3 [4] 5 6 ...  8 9 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0372 ]   [ 15 queries used ]   [ Generated: 12.12.24, 23:21 GMT ]