Нажмите новую версию, используя git, не теряя старую - PullRequest
0 голосов
/ 02 мая 2018

Я учусь использовать git, и сейчас у меня есть проект, я использую bitbucket, чтобы сохранить свой код, и я знаю, как его обновить, дело в том, что прямо сейчас я сделал некоторые изменения мэра в своем коде и Я хочу загрузить его, но без потери или обновления кода, уже находящегося в bitbucket, как я могу это сделать? Я не могу найти команду.

ветка такая же как версия? Например, если я создаю ветку:

git checkout -b <new-branch>

эта ветка будет похожа, скажем, на проект v1.2?

Ответы [ 3 ]

0 голосов
/ 02 мая 2018

Если я понимаю, о чем вы просите, вы хотите иметь возможность обновить свой проект, но при этом разрешить людям скачивать эту версию. Вы хотите, чтобы люди могли загружать v1.1 во время работы над v1.2.

В управлении версиями это обычно делается с помощью тега . Тег просто помещает метку в коммит. Это как ветка, но она никогда не двигается. Тогда люди могут проверить этот тег. Например ...

# This tags the current commit as v1.1
git tag v1.1

# This uploads your tags.
git push --tags

# Then anyone can checkout v1.1
git checkout v1.1

Использование тегов для выпусков позволяет любому легко оформить выпуск, и вы можете продолжать фиксировать небольшие изменения с хорошими сообщениями о фиксации.

Вот собственная документация Bitbucket о тегировании .

Другие системы, такие как Github идут дальше и превращают ваши теги в «релизы», которые можно загрузить с их веб-сайта . Bitbucket, похоже, не поддерживает эту функцию, но кажется, что он в разработке .


Что касается ветвления, если v1.1 done , то нет необходимости переходить на новый выпуск. Продолжайте работать над master и создавать новые теги для новых выпусков.

В тех случаях, когда ветки версий подходят для очень больших проектов, которые должны поддерживать несколько основных версий одновременно. Например, языку программирования может потребоваться поддержка версии v2 при одновременной работе с версией v3. Таким образом, они могут иметь ветку v2 и ветку v3. У каждого по-прежнему будут свои собственные теги (v2.2.4, v3.0.3 и т. Д.).

0 голосов
/ 02 мая 2018

Есть некоторый стандарт, который вы должны понимать, какие разработчики используют. Создайте ветку от мастера для разработки и развития до вашей ветви.

Mater -> развернуть -> yourBranch

Вы, вероятно, вносите изменения в yourBranch , объединяетесь с разработкой, затем разрабатываете, чтобы создать ветку релиза и объединиться в master, а также создать новый тег и запустить его в производство. Этот новый тег также будет содержать все ваши изменения и старый код.

V1.2 (Tag) <- Mater (ветвь) <- releaseV1.2 (ветвь) <- разработка (ветвь) <- ваш филиал (филиал) </p>

Команды тегов

# To get latest tag using command
git describe

# To create new tag
git tag v1.1

# To uploads all your tags in origin
git push --tags

Команды ветвления

# To create a new branch
git branch branchName

# To checkout in branch 
git checkout branchName

# Create a new branch and checkout in that branch
git checkout -b branchName

# To pull branch in origin
git pull origin branchName

# To add all files in which you have done changes
git add .

# To add single file in which you have done changes
git add pathToFile/fileName

# To commit your changes
git commit -m "Your message, what changes you have done"

# To push your changes in origin remote 
git push origin yourBranch
0 голосов
/ 02 мая 2018

Для этого не нужно использовать ветку.

Каждый раз, когда вы делаете коммит, соответствующая версия сохраняется в вашем хранилище. Вы можете получить к нему доступ позже через git checkout или графический интерфейс Bitbucket.

Все, что вам нужно сделать, это добавить (git add) ваши файлы в хранилище, а затем использовать git commit -m "added support of this..", чтобы зафиксировать текущее состояние вашего кода (все файлы, которые вы добавили).

После внесения некоторых изменений в файлы вы делаете git commit -m "fixed issue about ... ", и эта версия также будет сохранена в истории.

Обратите внимание, что коммиты - это (обычно) небольшие постепенные изменения в вашем коде. Для управления выпусками и версиями (v.1.0, v.2.2 и т. Д.) Вы можете использовать tags, как @Schwern предлагает в комментариях ниже.

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