2 ответа
Лучший ответ
Но «иметь филиал» не так уж много
Git использует имена веток для запоминания конкретных коммитов. Каждое имя запоминает одну и только одну фиксацию. Каждая фиксация уникально идентифицируется своим идентификатором хэша: большим уродливым числом вроде .
Это сами коммиты, которые запоминают предыдущие коммиты (по своим большим уродливым хеш-идентификаторам). Git называет это родительским коммитом каждого коммита. Это означает, что имя типа необходимо только для запоминания последней фиксации любой данной ветки. Git называет эту последнюю фиксацию подсказкой ветки.
Это также означает, что мы можем использовать другое, не совсем похожее на ветку, имя, чтобы запомнить некоторые другие ветки Git!
Войдите в ветку удаленного отслеживания
Создание клона включает внутренний запуск . Это копирует коммиты из другого Git, а также копирует их имена . Их имена на самом деле являются названиями ветвей: они запоминают свои кончики веток, например и . Но это не ваша подсказка ветки — пока нет! Ваш Git переименовывает их в и . Имена удаленного отслеживания вашего Git с префиксом запоминают их имена и их подсказки.
Запуск обновляет ваши имена удаленного отслеживания, чтобы вы знали, какие коммиты их новой ветки совершаются. Конечно, он также сначала получает любые коммиты, которые у них есть, а у вас нет.
Темная магия
Когда вы запускаете , Git начинает с поиска в вашем списке имен веток для . Если он существует, Git пытается проверить конкретную фиксацию, являющуюся концом вашей ветки , и сделать ее вашей текущей веткой. Пока все хорошо, но что, если имя не еще существует?
В этом случае вместо того, чтобы просто потерпеть неудачу, выполняет поиск по вашим именам удаленного отслеживания , например и . Если есть ровно одно имя, которое напоминает запрошенное вами имя, ваш Git теперь создает ваше собственное имя ветки, задавая его так, чтобы он запоминал, как ваша фиксация кончика ветки, тот же идентификатор хэша что ваш Git помнит как их подсказку, используя это имя для удаленного отслеживания.
Итак, теперь у вас есть , и теперь Git может это проверить!
Фактически, это был самый последний шаг : именно так вы в первую очередь получили свой . После копирования коммитов из и изменения их имен на ваш Git запустил . Ваш еще не существовал, поэтому ваш Git создал его из вашего , который ваш Git создал из своего . (Уфф! Кажется, долгий путь, и это так, но в конечном итоге все это имеет смысл!)
6
torek
13 Авг 2018 в 07:39
Короткий ответ
Когда вы (затем позже, когда вы ), ваша локальная версия репо получает обновленные определения удаленных ветвей, но локальные копии не создаются автоматически. Если вы просто проверяете ветку (но не существующую локально), имя которой совпадает с одним из удаленных, git предполагает, что вам нужно отслеживать удаленную версию того же самого.
Попробуйте , чтобы увидеть все.
Дополнительные сведения см. в очень полном ответе Торека, чтобы раскрыть скрытые детали.
3
RomainValeri
13 Авг 2018 в 07:43
Исходное состояние
В интерфейсе HTMLAcademy создаём репозиторий. Этот репозиторий (он же мастер-репозиторий), будет отправляться на итоговую проверку. Прямо вносить в него изменения нельзя, поэтому нужно создать себе форк (fork — вилка с английского), чтобы была возможность вносить изменения. Этот форк лежит на удаленном сервере у GitHub, и чтобы была возможность работать с ним у себя на компьютере мы должны сделать клон форка к себе на компьютер
В итоге получается 3 репозитория:
- Удаленный (на сервере) мастер-репозиторий от Академии для защиты, в который прямо изменения вносить нельзя
- Удаленный форк мастера. Через него изменения отправляются в мастер-репозиторий через Pull Request.
- Локальный клон форка. Чтобы можно было работать на своем компьютере.
Что такое remote
«Remote» для ветки — это URL-адрес, по которому ваш локальный репозиторий git извлекает изменения. Ваш локальный репозиторий git полностью принадлежит вам — на него не влияет код других людей, пока они не отправят свои коммиты на удалённый компьютер. Если вы все используете один и тот же remote, то всё синхронизируется, но remote — это всего лишь конечная точка. Вы можете клонировать эту конечную точку и без особых проблем переключиться на новый remote.
Каждый раз, когда вы клонируете новый репозиторий, в качестве remote по умолчанию устанавливается «origin». Вы можете найти remote для любого репозитория git, выполнив:
git remote -v
Вероятно, эта команда будет отображать URL-адрес вашего основного репозитория на GitHub или в другом сервисе, который вы используете. Если у вас несколько remote, они тоже будут здесь отображаться.
Но то, что origin является remote по умолчанию, не означает, что вы ограничены одним им. Зачем вам два remote? Что ж, хороший вариант использования — это AWS CodeCommit. Это репозиторий git, который имеет множество интеграций с их вычислительной платформой EC2, что позволяет автоматизировать развёртывание кода на ваших серверах непосредственно из системы управления версиями.
Однако CodeCommit довольно неуклюж по сравнению с более специализированными поставщиками git, такими как GitHub, GitLab и BitBucket, и не имеет такой интеграции CI/CD, которая делает этих поставщиков отличными. Итак, вы столкнулись с дилеммой: использовать CodeCommit в качестве решения git по умолчанию или самостоятельно создать конвейер автоматического развёртывания кода.
Однако с несколькими remote вы можете легко отправить код во второй репозиторий. Всякий раз, когда вы хотите обновить свои серверы, вы можете отправить изменения из основного источника управления в CodeCommit, чтобы запустить конвейер развёртывания.
1 ответ
Вы можете добиться этого, отбросив коммит и принудительно отправив обновленную ветку на свой пульт. Примечание: будьте осторожны, если другие лица проверяют филиал.
Предположим, что ваша история похожа на следующую, и вы хотите удалить :
Сделайте следующее:
Теперь удалите строку ,
Сохраните файл, а затем принудительно отправьте ветку на удаленный компьютер:
1
2017-06-01 20:35
Это комбинированная функция как BitBucket, так и самого Git. Коммиты Git — это неизменяемые объекты. Вы не можете перемещать их позицию на графике истории, только создавать новые коммиты в других местах и иногда удалять ряды коммитов.
Ветвь — это просто движущаяся метка (тег — это статическая метка, привязанная к фиксации). Когда ветка HEAD, любые сделанные вами коммиты перемещают метку вместе с ними. Вы можете переместить одну и ту же метку в несвязанную часть графика, не обязательно только вперед и назад. Когда вы перебазируете, именно это и происходит. Новые коммиты (в основном) с тем же содержанием, что и оригиналы, созданные на новой основе, и метка ветки перемещается, чтобы указывать на них. Вы всегда можете удалить коммиты без ссылок, которые не принадлежат ветке в вашем локальном репо.
Это нормально, когда вы работаете локально
После того, как вы начнете работать с пультами дистанционного управления, вы должны принять во внимание, что вы не можете быть единственным, кто использует репо. После того, как вы выполните принудительное нажатие перебазированной ветки, произойдет несколько вещей:
Вновь созданные коммиты отправляются на удаленный
Метка ветки на пульте управления ветки, которую вы отслеживаете, обновляется для новых коммитов.
На коммиты в старой ветке больше не ссылаются вы или сервер, но они все еще существуют
Фактически, любые другие пользователи, которые клонировали ваше репо, по-прежнему будут указывать на эти коммиты в своих локальных версиях, пока они явно не изменят историю на своей стороне. Фактически, если бы они сделали принудительное нажатие, метка ветки переместилась бы обратно туда, где она была, отбрасывая ваше перебазирование.
Git не навязывает иерархию репозиториев, которые вы клонируете. Каждый из них в такой же степени отражает истинное состояние вашего кода, как и любой другой. По этой причине явно неиспользуемые коммиты хранятся какое-то время, даже если они не появляются в истории локальной ветки. При этом git может периодически отсекать такие коммиты без ссылок, если они достигают определенного возраста, не получая новых потомков.
Учитывая приведенную выше информацию, вы не сделали ничего плохого. Удаленный коммит не будет клонирован без явной ссылки на его хэш. Есть хороший шанс, что если вы оставите фиксацию в покое на достаточно долгое время, она будет очищена автоматически. Если этого достаточно, оставь. Если, с другой стороны, вам действительно нужно, чтобы эта фиксация исчезла, читайте дальше.
Самый надежный способ обеспечить чистое репо — это начать с нуля. Вы можете создать локальное репо, которое будет сокращено, очищено и в целом в соответствии с вашей спецификацией. Как только вы это сделаете, вы можете удалить серверную копию. Затем создайте новое пустое репо с именем оригинала и перенесите в него свою изначальную историю.
1
2019-12-03 08:58
Настройка нескольких remote
На самом деле использовать git таким способом довольно просто. Вы добавляете remote так же, как и существующую папку, за исключением того, что вместо добавления «исходного» remote вы даёте ему другое имя.
git remote add <ИМЯ> <URL>
Затем, когда вы хотите push на второй remote, добавьте удалённое имя и ветвь к своей команде push:
git push second master
Или переключите remote по умолчанию с помощью —set-upstream:
git push --set-upstream second master
Это простейшая настройка, однако она требует, чтобы вы либо передавали имя remote в качестве аргумента, либо каждый раз переключали remote.
На самом деле, если вы используете два remote, вам, вероятно, понадобится лучший способ управления отправкой кода на второй remote. Лучший способ справиться с этим в git — создать ещё одну ветвь для кода, отправленного во второй восходящий поток, например развёртывания в AWS CodeCommit.
Вы можете создать ветку с помощью checkout -b:
git checkout -b deployment
Затем добавьте развёртывание remote:
git remote add deployment <URL>
и загрузите основную ветку:
git fetch deployment master
Затем вы можете настроить восходящий поток для текущей ветки, запустив:
git branch --set-upstream-to=deployment/master
Вы можете повторить этот процесс для любого количества ветвей, что делает его отличным методом отслеживания нескольких remote. Однако помните, что это только локальная настройка, поэтому, если вы отправите эту ветку в свой основной репозиторий, у других не будет своих копий ветки развёртывания, настроенных на автоматическое использование второго remote.
Было бы идеально, если бы вторая ветвь была только односторонней, то есть вы только push (отправлять) код, а не pull (скачивать) новый код, иначе вы можете столкнуться с неожиданными конфликтами. Помимо этого, git отлично работает с несколькими remote.
7 ответов
Лучший ответ
(1) Внутри локального репозитория git создайте новый файл sh
(2) Вставьте приведенный ниже контент в файл :
(3) Получить все ветки:
(4) Проверьте результат в локальном репозитории:
Например, я использую репозиторий: https://github.com/donhuvy/spring-boot
Как видите, я получил все ветки на локальный компьютер:
63
Raktim Biswas
8 Май 2020 в 13:45
Это не слишком сложно, очень простые и понятные шаги заключаются в следующем:
После клонирования репо запустите
Это покажет вам все удаленные ветки.
Если вы хотите работать с удаленной веткой, вам необходимо создать локальную ветку отслеживания:
Убедитесь, что вы находитесь в нужной ветке, с помощью следующей команды;
Результат будет таким;
Обратите внимание на знак *, обозначающий текущую ветвь. 46
Amit Gupta
29 Окт 2016 в 05:52
46
Amit Gupta
29 Окт 2016 в 05:52
Затем после клонирования репо со всеми его ветвями выполните следующие действия.
17
Amen Ra
11 Фев 2017 в 05:00
Ветви по сути являются указателями на коммиты. Когда вы выполняете (или ), вы получаете все коммиты из удаленного репозитория, а также все его ветки.
Однако по умолчанию не показывает удаленные ветви. Вместо этого он показывает ваши локальные ветки, которые могут иметь или не иметь никакого отношения к ветвям, существующим на удаленном компьютере. Если вы запустите , git сообщит обо всех известных ему ветвях, как локальных, так и удаленных.
Стоит отметить, что теги не работают таким образом, и нет различия между локальным и удаленным тегами.
13
Xiong Chiamiov
28 Окт 2016 в 20:10
Чтобы загрузить полный репозиторий, включая все ветки, используйте следующую команду:
Это создаст папку с именем , если вы не дадите ей другое имя.
Теперь вы получаете полную копию исходного репозитория, но поскольку он находится в режиме , у вас нет рабочего дерева. Фактически у вас есть папка , включая все ветки и контент. Это причудливый способ сказать, что у вас не будет прямого доступа к файлам, потому что они спрятаны в системе git (в сжатом виде и т. Д.).
Чтобы сделать это «обычным» репозиторием git, нам нужно сделать это клонирование папки в новую папку, которая будет нашей обычной папкой репо:
Обратите внимание, что не существует единой собственной команды git для загрузки всех удаленных веток, поэтому самый простой способ — убедиться, что все коммиты отправлены в источник, а затем повторно загрузить весь репозиторий заново с помощью этой опции —mirror. 3
togume
21 Авг 2018 в 15:20
3
togume
21 Авг 2018 в 15:20
Я считаю, что это простое решение для клонирования репозитория git и всех удаленных веток:
3
Stryker
11 Июн 2019 в 15:48
Что делает ваше репо полностью идентичным.
См. https://help.github.com/en/articles/duplicating- а-репозиторий
2
feng zhang
1 Апр 2020 в 15:18
11 ответов
Лучший ответ
фактически необходим из-за перебазирования. Всякий раз, когда вы выполняете перебазирование, вам нужно будет выполнить принудительное нажатие, потому что удаленная ветвь не может быть быстро перенаправлена на вашу фиксацию. Вы всегда хотите убедиться, что вы выполняете вытягивание перед нажатием, но если вам не нравится принудительно нажимать на master или dev, вы можете создать новую ветку для отправки а потом слить или сделать пиар.
292
Armel
7 Фев 2020 в 07:42
Чтобы убедиться, что ваша локальная ветка FixForBug не опережает удаленную ветку, FixForBug извлекает и объединяет изменения перед отправкой.
70
mhatch
9 Сен 2016 в 14:45
означает, что в удаленной ветке произошли изменения, которых у вас нет локально. и git сообщает, что вы импортируете новые изменения из и объединяете их с вашим кодом, а затем на удаленный компьютер.
Вы можете использовать эту команду для принудительного внесения изменений на сервер с помощью local repo ().
С тегом вы замените своим кодом.
63
Talha Rafique
27 Июл 2020 в 08:43
Если вы хотите избежать использования , вы можете использовать просто
Вместо того
В случае отсутствия перебазирования изменения будут извлечены из и объединены в вашу ветку . Тогда вы сможете запустить
Без использования .
20
Greg Hewgill
8 Сен 2016 в 22:07
Команда, которую я использовал с Azure DevOps, когда я обнаружил сообщение «обновления были отклонены, потому что верхняя часть вашей текущей ветки отстает», была / является следующей командой:
Мастер происхождения git pull
(или можно начать с новой папки и сделать клонирование) ..
Этот ответ не касается поставленного вопроса, в частности, Кейф ответил на него выше, но он отвечает на заголовок / текст заголовка вопроса, и это будет распространенный вопрос для пользователей Azure DevOps.
Я заметил комментарий: «Вы всегда должны быть уверены, что делаете тягу, прежде чем толкать» в ответе Кейфа выше!
Я также использовал инструмент Git Gui в дополнение к инструменту командной строки Git.
(Я не был уверен, как сделать эквивалент команды командной строки «git pull origin master» в Git Gui, поэтому я вернулся в командную строку, чтобы сделать это).
На диаграмме показаны различные команды git для различных действий, которые вы, возможно, захотите предпринять:
6
Allan F
12 Сен 2019 в 05:29
Это должно быть потому, что фиксация опережает ваш текущий толчок.
Если git rebase прошла успешно, тогда хорошо. В противном случае вы разрешаете все конфликты слияния локально и продолжаете его до тех пор, пока перебазирование с удаленным не будет успешным.
4
thatguy
27 Авг 2020 в 11:29
Установить текущее имя ветки как master
Или название филиала разработать
4
Golam Sorwar
15 Сен 2020 в 18:07
У меня возникла эта проблема при попытке нажать после перезагрузки через Visual Studio Code, моя проблема была решена путем простого копирования команды из окна вывода git и выполнения ее из окна терминала в Visual Studio Code.
В моем случае команда была примерно такой:
1
HoloLady
7 Май 2020 в 06:53
Если вы попробовали все вышеперечисленное, и проблема все еще не решена, убедитесь, что имя нажатой ветки уникально и не существует в пультах дистанционного управления. Сообщение об ошибке может вводить в заблуждение.
M.Erkan Çam
13 Ноя 2020 в 14:52
Я помогу дальше:
1
Alex Reuka
2 Сен 2020 в 10:17
Вы, должно быть, добавили новые файлы в свои коммиты, которые не были отправлены. Проверьте файл и снова нажмите этот файл, и попробуйте потянуть / нажать, он будет работать. Это сработало для меня ..
Rahul Parab
3 Авг 2020 в 07:06
Удаление ветки на GitHub
GitHub действует только как удаленный источник, поэтому ветки там по умолчанию являются удаленными. Если вы удалите ветку с помощью веб-сайта GitHub, вам придется удалить соответствующую локальную ветку одним из других способов, описанных здесь.
Как и в случае с настольным приложением GitHub, веб-сайт GitHub не позволит вам удалить ветку по умолчанию. Варианта просто не появляется. Однако удалить ветку несложно. На странице Code репозитория нажмите ссылку branch , найдите ветку, которую нужно удалить, затем нажмите Удалить эту ветку значок, похожий на корзину:
Будьте внимательны что нет никаких проверок на неслияние изменений, поэтому на GitHub ветка будет просто немедленно удалена. Однако, поскольку он всегда будет представлять удаленную ветку, вы ожидаете именно такого поведения.
Обратите внимание, что после удаления вы увидите кнопку Восстановить филиал. Однако это просто полезная функция отмены, если вы случайно нажмете значок удаления
Не полагайтесь на это, потому что как только вы обновите страницу или уйдете со страницы, вы потеряете эту возможность!
Зачем удалять ветку?
Во-первых, если вы все еще начинаете с git есть очень большая вероятность, что вы создадите ветку, а затем решите, что вам это не нужно. Или вы можете экспериментировать с ветвями и желать убрать после себя. Это нормально, поскольку ветвление в git — это легкая операция. Это очень быстро и эффективно использует дисковое пространство.
В результате многие рабочие процессы разработки git поощряют ветвление даже для очень маленьких или коротких задач. Например, распространенной стратегией является создание ветки для исправления одной ошибки. Это верно даже в том случае, если всего один автор вносит однострочное изменение в один файл.
По этим причинам создание и удаление ветвей — это операции, которые необходимо хорошо понимать. Вы можете часто удалять ветки во время типичного рабочего процесса разработки.
Bitbucket. Облачный хостинг VSC и его возможности
Bitbucket становится все более популярным. У него, как и у его конкурентов, существует возможность вернуться к нужной версии кода и исправить ошибки.
Особенность Bitbucket по сравнению с его аналогом GitHub в том, что им могут бесплатно пользоваться до пяти разработчиков. При этом в бесплатную версию входит доступ к неограниченному количеству частных репозиториев — мест, где хранятся и поддерживаются данные.
Обновление подписки на сервис увеличивает количество минут сборки и объем хранилища больших файлов, включенных в пакет: 3$ (приблизительно 220 руб.) в месяц для стандартной учетной записи и 6$ (приблизительно 440 руб.) для премиум-версии. У сервиса GitHub есть корпоративная версия; ее аналог — премиум у Bitbucket — стоит 21$ в месяц (1550 руб.).
LES BASES DE GIT (тут дебютант)
Я создал множество веток в одном из наших репозиториев. Эти ветки предназначены для тестирования, прежде чем они будут переданы мастеру. Сейчас я вижу их много в списке, и мы никогда больше не будем его использовать. Как удалить эти ветки прямо в Bitbucket?
Если филиалы только локальные, вы можете использовать -d если ветка была объединена, например
Если ветка содержит код, который вы никогда не планируете объединять, используйте -D вместо.
Если ветка находится в восходящем репо (на Bitbucket), вы можете удалить удаленную ссылку,
Кроме того, если вы находитесь на веб-сайте Bitbucket, вы можете удалить отправленные вами ветки, перейдя в Ветви функций вкладка под Совершает на сайте. Там вы найдете значок с многоточием. Щелкните это, затем выберите Удалить ветку. Только убедитесь, что вы хотите сбросить туда все изменения!
2 Если я запустил git branch -r, я заметил, что BB не удаляет ветку с сервера. Он больше не отображается в графическом интерфейсе, но отображается на сервере git.
Для удаления ветки из Bitbucket,
- Перейдите в Обзор (Ваш репозиторий> ветви на левой боковой панели)
- Щелкните количество веток (это должно показать вам список веток)
- Нажмите на ветку, которую хотите удалить
- В правом верхнем углу нажмите на 3 точки (кроме кнопки «Объединить»).
- Есть опция «Удалить ветку», если у вас есть права.
- 1 Где «обзор»? Если вы имеете в виду Источник, я не вижу опции «Удалить ветвь» под …
- 7 Шаг 1 должен быть таким: «перейдите в репо и нажмите« ветки »на левой боковой панели».
В дополнение к ответу @Marcus теперь вы также можете удалить удаленную ветку с помощью:
в Bitbucket перейти к веткам в левом меню.
- Выберите ветку, которую хотите удалить.
- Перейдите в столбец действий, нажмите на три точки (…) и выберите удалить.
Я мог удалить большую часть своих веток, но одна выглядела так, и я не мог ее удалить:
Оказалось, что кто-то установил под и оттуда не отмечен . Надеюсь, это поможет кому-то.
Обновить: Где находятся настройки из вопроса в комментарии. Войдите в репозиторий, который вы не хотите редактировать, чтобы открыть меню. Чтобы изменить это, вам могут потребоваться права администратора.
Где найти «Настройки»? Мне нужно удалить основную ветку или все файлы в ней. Как мне это сделать?
Шаг 1. Войдите в систему Bitbucket
Шаг 2: Выберите ваш репозиторий в списке репозиториев.
Шаг 3: Выберите ветви в левом меню.
Шаг 4: Курсор на ветке щелкните по трем точкам (…) Выберите Удалить (см. Изображение внизу)
Если вы используете среду разработки pycharm для разработки и уже добавили с ней Git. вы можете напрямую удалить удаленную ветку из pycharm. На панели инструментов VCS -> Git -> Ветви -> Выбрать ветку -> и Удалить. Он удалит его с удаленного сервера git.
Я написал этот небольшой скрипт, когда количество веток в моем репо перевалило за несколько сотен. Я не знал о других методах (с помощью CLI), поэтому решил автоматизировать их с помощью селена. Он просто открывает веб-сайт Bitbucket, переходит в раздел «Филиалы», прокручивает страницу до конца и нажимает на каждое меню параметров ветки -> нажимает кнопку «Удалить» -> нажимает «Да». Его можно настроить так, чтобы он сохранял последние N (100 — по умолчанию) веток и пропускал ветки с определенными именами (master, develop — по умолчанию, может быть больше). Если это подходит вам, вы можете попробовать то же самое.
https://github.com/globad/remove-old-branches
Все, что вам нужно, это клонировать репозиторий, загрузить подходящую версию Chrome-webdriver, ввести несколько констант, таких как URL-адрес, в ваш репозиторий и запустить скрипт.
Код достаточно прост для понимания. Если у вас есть вопросы, напишите комментарии / создайте проблему.
Попробуйте эту команду, она очистит все ветки, которые были объединены с филиал.
В Android Studio, параметры в правом углу среды IDE:
- Изменить / оформить заказ в другом местном филиале
- Удалите ненужные локальные ветки (например, v0.0.1 …)
- Удалите ненужные удаленные ветки (например, origin / v0.0.1 …) — этот шаг удалит ветки в BitBucket, если ветки не будут удалены, и они не являются ОСНОВНАЯ ОТРАСЛЬ.
Если вам нравится веселье, вы можете просто перейти на страницу со списком ваших веток (например, слитых) и просто запустить в консоли javascript:
Другие особенности Bitbucket
Гибкость. Данные в Bitbucket можно импортировать из множества других сервисов: Git, CodePlex, Google Code, SourceForge и SVN.
Интеллектуальный семантический поиск. В Bitbucket зашит семантический поиск JQL. Он сканирует ваш синтаксис, чтобы найти определения, соответствующие вашему запросу, а не просто имена переменных. Это делает поиск более быстрым.
Wiki-функция. Каждый bitbucket repository (репозиторий) может иметь свою собственную вики. Эта функция включает всю необходимую информацию и заметки по работе с платформой. Кроме того, вы можете использовать вики для постоянного размещения документации по ПО.
Интеграция с Jira. Jira — ПО, которое позволяет планировать задачи, управлять проектами и отслеживать ошибки. Bitbucket легко интегрируется с ним: оба проекта принадлежат компании Atlassian. Если вы используете их вместе, можете установить фиксацию кода для автоматического обновления задач в Jira.
12 ответов
Лучший ответ
Если ветки только локальные, вы можете использовать -d , если ветка была объединена, например
Если ветка содержит код, который вы никогда не планируете объединять, используйте вместо него -D .
Если ветка находится в репозитории восходящего потока (на Bitbucket), вы можете удалить удаленную ссылку с помощью
Кроме того, если вы находитесь на веб-сайте Bitbucket, вы можете удалить созданные вами ветки, перейдя на вкладку Функциональные ветки в разделе Коммиты на сайте. Там вы найдете значок с многоточием. Нажмите на нее, а затем выберите Удалить ветку . Только убедитесь, что вы хотите сбросить туда все изменения!
247
steampowered
20 Мар 2016 в 17:18
Попробуйте эту команду, она очистит все ветки, которые были объединены с веткой .
1
Ehab Al-Hakawati
27 Мар 2019 в 11:51
Я написал этот небольшой скрипт, когда количество веток в моем репо перевалило за несколько сотен. Я не знал о других методах (с CLI), поэтому решил автоматизировать их с помощью селена. Он просто открывает веб-сайт Bitbucket, переходит в раздел «Филиалы», прокручивает страницу до конца и нажимает на каждое меню параметров ветки -> нажимает кнопку «Удалить» -> нажимает «Да». Его можно настроить, чтобы сохранить последние N (100 — по умолчанию) веток и пропустить ветки с определенными именами (master, develop — по умолчанию, может быть больше). Если это вам подходит, вы можете попробовать то же самое.
Все, что вам нужно, — это клонировать репозиторий, загрузить соответствующую версию Chrome-webdriver, ввести несколько констант, таких как URL-адрес, в ваш репозиторий и запустить скрипт.
Код достаточно прост для понимания. Если у вас есть вопросы, напишите комментарии / создайте проблему.
2
Dan
20 Июн 2019 в 17:22
Если вы используете среду разработки pycharm для разработки и уже добавили с ней Git. вы можете напрямую удалить удаленную ветку из pycharm. На панели инструментов VCS -> Git -> Ветви -> Выбрать ветку -> и удалить . Он удалит его с удаленного сервера git.
2
Jyoti Amage
17 Сен 2018 в 07:35
Шаг 1. Войдите в Bitbucket
Шаг 2: Выберите ваш репозиторий в списке репозиториев.
Шаг 3: Выберите ветви в меню слева.
Шаг 4: Курсор на ветке щелкните на трех точках (…) Выберите Удалить (см. Изображение внизу)
4
Nanhe Kumar
4 Авг 2018 в 07:55
В Bitbucket перейдите к веткам в меню слева.
- Выберите ветку, которую хотите удалить.
- Перейдите в столбец действий, нажмите на три точки (…) и выберите удалить.
9
Prashant Sharma
20 Сен 2017 в 06:03
Я мог удалить большую часть своих веток, но одна выглядела так, и я не мог ее удалить:
Оказалось, что кто-то установил под и оттуда снял флажок . Надеюсь, это может кому-то помочь.
Обновление : где находятся настройки из вопроса в комментарии. Войдите в репозиторий, который вы не хотите редактировать, чтобы открыть меню. Чтобы изменить это, вам могут потребоваться права администратора.
10
Ogglas
17 Янв 2018 в 09:49
В дополнение к ответу @Marcus теперь вы также можете удалить удаленную ветку с помощью:
23
philipvr
15 Сен 2017 в 20:33
Для удаления ветки из Bitbucket,
- Перейдите в Обзор (ваш репозиторий> ветки на левой боковой панели)
- Щелкните количество веток (это должно показать вам список веток)
- Нажмите на ветку, которую хотите удалить
- В правом верхнем углу нажмите на 3 точки (кроме кнопки «Объединить»).
- Есть опция «Удалить ветку», если у вас есть права.
45
lealceldeiro
25 Июл 2019 в 11:11
Чтобы получить , введите в командной строке
MJ Montes
28 Авг 2020 в 04:36
Если вам нравится веселье, вы можете просто перейти на страницу со списком ваших веток (например, объединенных) и просто запустить в консоли javascript:
КАК ЭТО УСТРОЕНО
Сначала нам нужна страница с токеном CSRF в источнике страницы, поэтому я выбираю:
Затем для каждой ветки (в списке веток) он получает токен CSRF и удаляет эту ветку.
Не забывайте предотвращать чувствительные ветки перед удалением в настройках репо.
Это НЕ удалит основную ветку.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
Вы должны быть авторизованы.
Он удаляет только ветки, видимые на этой странице (поэтому, чтобы удалить остальные ветки, вам нужно перейти на следующую страницу).
turkus
3 Июл 2019 в 11:19
В Android Studio параметры в правом углу среды IDE:
- Изменить / оформить заказ в другом местном филиале
- Удалите ненужные локальные ветки (например, v0.0.1 …)
- Удалить нежелательные удаленные ветки (например, origin / v0.0.1 …) — на этом шаге будут удалены ветки в BitBucket, если удаление ветвей не запрещено и они не являются ГЛАВНЫМ ВЕТВОМ .
Tim Long
9 Ноя 2015 в 23:20