Разделите git-репозиторий и объедините его позже - PullRequest
2 голосов
/ 19 августа 2011

На данный момент у меня 1.0 -версия моего хранилища. Поскольку он закончен, я бы хотел начать работать над 1.1. Каждая версия будет отправлена ​​на сервер после ее завершения. Однако, если версия содержит ошибки (например, орфографические ошибки), это будет 1.0.1. Поскольку я уже начал работать с 1.1, я больше не могу редактировать 1.0.

Одним из решений будет дублирование репозитория (чтобы вы получили 1.0 и 1.1), а затем незначительные ошибки в 1.0 и отправка этой версии. Однако когда я сделаю это и захочу запустить 1.1, он все равно будет содержать те же ошибки, что и 1.0 до 1.0.1.

Я ищу решение, в котором я могу разделить (разветвлять) репозиторий, добавить в него изменения, а когда он будет готов, снова объединить его с основным репозиторием:

   /------------------------- 1.1 ------------------------- \
  /                                                          \
 /          /------- 1.0.1 ---------\                         \
/          /                         \                         \
--------- 1.0 (main) -------- 1.0.1 (main) ---------------- 1.1 (main) -------

Где 1.1 также содержит исправления ошибок, которые я сделал в 1.0.1.

Надеюсь, это возможно. Если да, не могли бы вы дать мне полные git -команды, которые мне нужно использовать, и правила терминалогии / именования (поэтому я знаю, где искать, когда сталкиваюсь с некоторыми другими проблемами).

Заранее спасибо!

Ответы [ 3 ]

3 голосов
/ 19 августа 2011

Прочтите это.Он говорит именно о том, чего вы пытаетесь достичь.

http://nvie.com/posts/a-successful-git-branching-model/

Теперь предполагается, что вы знаете, что в git ветвление - это частая операция на высшем уровне.Легко создавать ветви, объединять их в другие ветви, переименовывать, избавляться от них и т. Д. И т. Д. И т. Д.

2 голосов
/ 19 августа 2011

То, что вы ищете, это branch es.

Ветвь git - это независимое дерево внутри репозитория git. Для получения дополнительной информации ознакомьтесь с документацией: http://www.kernel.org/pub/software/scm/git/docs/git-branch.html

1 голос
/ 22 ноября 2012

Другим хорошим источником является статья « Стратегии ветвления в Git - обзор » (менее сложная, чем текущий стандарт git-flow )

Примеры команд извлечения и git:

Для одного разработчика вы можете работать над экспериментальным путем кода:
У вас есть представление о том, как следует реализовать функцию, и вы хотите начать работу.
Но у вас также есть некоторые регулярные разработки, которые должны выполняться одновременно (исправления, другие функции и т. Д.).
создайте ветку и код:

$ git branch feature_x dev
$ git checkout feature_x
# add/commit... add/commit... add/commit

Feature branch created off dev branch

(ветвь объекта создана из ветки dev)

Если код функции сработает, вы объединяете его обратно в ветку разработки.

$ git checkout dev
$ git merge feature_x

Feature branch merged into dev branch

(ветвь функций объединена с веткой dev)

Если нет, просто вернитесь в ветку dev и удалите feature_x:

$ git checkout dev
$ git branch -D feature_x

Feature branch left unmerged

(ветвь элементов оставлена ​​без изменений)

На самом деле вам не нужно удалять ветку. Вы можете оставить все как есть на тот случай, если захотите вернуться, чтобы взглянуть на эту работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...