Хорошо, вот рабочий процесс для этого.
Сначала вы клонируете из стороннего проекта на bitbucket, который хотите изменить, чтобы получить следующую историю в локальном клоне:
3rd: 1---2---3
clone: 1---2---3
Затем вы создаете новый проект для своей учетной записи bitbucket и продвигаетесь к этому репо, так что теперь у вас есть:
3rd: 1---2---3
clone: 1---2---3
fork: 1---2---3
"fork" здесь просто означает публичный клон на bitbucket.
Затем вы вносите некоторые изменения в свой клон и отправляете в свой собственный репозиторий bb, теперь у вас есть:
3rd: 1---2---3
clone: 1---2---3---4---5
fork: 1---2---3---4---5
Затем в какой-то момент третье лицо обновляет свой репозиторий, поэтому теперь у вас есть:
3rd: 1---2---3---4'--5'
clone: 1---2---3---4---5
fork: 1---2---3---4---5
Знак 'за номерами ревизий просто означает, что номера одинаковы, но содержимое набора изменений не совпадает.
На этом этапе вы перетаскиваете сторонние изменения в свои собственныеклон:
3rd: 1---2---3---4'--5'
clone: 1---2---3---4---5
\
\-6'--7'
fork: 1---2---3---4---5
Затем вы выполняете слияние в своем клоне, а также вносите несколько новых изменений:
3rd: 1---2---3---4'--5'
clone: 1---2---3---4---5----8---9---10
\ /
\-6'--7'-/
fork: 1---2---3---4---5
и отправляете в хранилище bb:
3rd: 1---2---3---4'--5'
clone: 1---2---3---4---5----8---9---10
\ /
\-6'--7'-/
fork: 1---2---3---4---5----8---9---10
\ /
+-6'--7'-+
Опять в какой-то момент третий годrty разработчик обновляет свое репо:
3rd: 1---2---3---4'--5'--6'--7'
clone: 1---2---3---4---5----8---9---10
\ /
+-6'--7'-+
fork: 1---2---3---4---5----8---9---10
\ /
+-6'--7'-+
Итак, вы повторяете процесс, сначала потяните:
3rd: 1---2---3---4'--5'--6'--7'
clone: 1---2---3---4---5----8---9---10
\ /
+-6'--7'-+--11'---12'
fork: 1---2---3---4---5----8---9---10
\ /
+-6'--7'-+
Вы объединяете:
3rd: 1---2---3---4'--5'--6'--7'
clone: 1---2---3---4---5----8---9---10---13
\ / /
+-6'--7'-+--11'---12'-+
fork: 1---2---3---4---5----8---9---10
\ /
\-6'--7'-/
И нажимаете:
3rd: 1---2---3---4'--5'--6'--7'
clone: 1---2---3---4---5----8---9---10---13
\ / /
+-6'--7'-+--11'---12'-+ <-- 11' and 12' corresponds to 6'/7'
fork: 1---2---3---4---5----8---9---10---13
\ / /
+-6'--7'-+--11'---12'-+