для начала, я должен сказать, что я новичок в использовании Git или его расширенных возможностей в плане отслеживания и управления изменениями в проекте, особенно в области разработки программного обеспечения, в которой он специализируется. Однако я также могу сказать, что у меня достаточно понимания его основ и основ, таких как init
, clone
, push
, pull
, merge
и разрешение конфликтов.
также добавим, что мы работаем над проектом WinForms C # и отслеживаются Git с помощью Axosoft, LLC. GitKraken
Application.
Таким образом, вместо создания ветки для определенных модулей, мы вместо этого создаем ветку для конкретных разработчиков, так как они единолично управляют ее разработкой. Подводя итог этого:
branch marq
, ja
, ranz
, kim
и kiian
- все разработчики, работающие над определенными модулями.
ветвь development
- это ветвь, где мы объединяем стабильные коды, которые все готовы к тестированию.
однако, чтобы уменьшить путаницу, потому что я не очень хорошо пишу свои проблемы. давайте сосредоточимся на ветви development
, ja
и kiian
. и что я управляю как веткой kiian
, так и веткой development
на моем локальном компьютере, что в основном означает, что я регулярно переключаюсь на ветку development
и извлекаю изменения из разных ветвей.
несколько дней назад, ветвь kiian
объединила свои изменения в ветку development
, ветвь kiian
не извлекла объединенные изменения, хранящиеся в ветке development
, после этого, поскольку нет никаких предыдущих изменений, которые необходимо загрузить в его локальное хранилище. до сегодняшнего дня в ветке kiian
произошли 15 + 19 изменений до ее последнего слияния с веткой development
.
сегодня филиал ja
решил объединить свои изменения с филиалом development
. поэтому я переключил ветви с ветви kiian
на ветку development
(обратите внимание, что новые изменения 15 + 19 еще не были зафиксированы в локальном репозитории филиала kiian
). Мне удалось успешно переключить ветки, хотя я думаю, что не должен был этого делать (что касается того, что я понимаю, мне следует разрешить, если не будут приняты все ожидающие изменения).
Теперь произошло то, что, когда я слил ветку ja
в ветку development
, все ожидающие изменения (15 + 19), которые предположительно все еще находились в ветке kiian
, были поставлены на активность слияния ветки ja
и development
. это также вызвало конфликт слияния для 3 файлов, измененных веткой kiian
, которые еще предстоит зафиксировать. те же самые изменения (15 + 19) также были спрятаны на ветке kiian
, которую мне пришлось снова вытащить.
теперь мой вопрос, чтобы подвести итог этому, как получается, что изменения в ветви kiian
, которые еще даже не зафиксированы, были вовлечены в слияние ветви development
и ja
, которой якобы не было связан с?
те же самые изменения еще не были готовы и не должны быть объединены, но по какой-то причине были объединены, и точная копия изменений этой ветви kiian
была спрятана.
ниже - скриншот нашего графика:
![enter image description here](https://i.stack.imgur.com/3kqZP.png)