Подтвердить что ты не робот

Есть ли способ переименовать репозиторий на Bitbucket, используя их API

Можно ли переименовать существующий репозиторий в Bitbucket с помощью REST API? Я прочитал всю документацию API Bitbucket, но я не мог найти ничего, даже отдаленно связанного. Я спрашиваю, возможно, я что-то пропустил. Спасибо!

4b9b3361

Ответ 2

Используя сайт Bitbucket, вы можете переименовать репо следующим образом:

  • Перейдите на страницу обзора репо, обычно https://bitbucket.org/username/oldname/overview
  • Щелкните по настройкам cog в крайнем правом конце строки меню!
  • Вместо 1. и 2. вы можете ввести 'r', затем 'a' для администрирования.
  • Измените имя в поле Name.
  • Нажмите Save repository details.

Обратите внимание, что изменение имени репо также изменит его URL-доступ. Раньше доступ был https://[email protected]/username/oldname.git Теперь, однако, URL/путь репо будет https://[email protected]/username/newname.git

Вы можете проверить это, вернувшись на страницу обзора и нависая над большой синей кнопкой HTTPS. В нижней части браузера будет показано, что теперь он указывает на https://[email protected]/username/newname.git

Если вы используете SourceTree, вы можете обновить удаленный URL, выделив локальное репо в SourceTree, а затем

  • Нажмите Repository
  • Нажмите Repository Settings...
  • Выделите строку, содержащую удаленную ветку. Обычно origin https://[email protected]/username/oldname.git
  • Нажмите Edit
  • Обновите поле URL/Path. Измените "oldname.git" на "newname.git", оставив без изменений. Таким образом, полный путь должен быть https://[email protected]/username/newname.git
  • Нажмите OK

Ответ 3

В оболочке unix вы можете использовать cURL;

curl https://api.bitbucket.org/1.0/repositories/{accountname}/{old_repo_name} --data "name=new_repo_name" -X PUT

Возможно ли, чтобы пользователь аутентифицировался в частных репозиториях, но все же могут выполнять только администраторы:

curl https://USER:[email protected]/1.0/repositories/{accountname}/{old_repo_name} --data "name=new_repo_name" -X PUT

Ответ 4

В соответствии с последним API здесь приведена правильная команда curl:

curl -X PUT --user username:password https://bitbucket.org/api/1.0/repositories/{accountname}/{repo_slug}  --data "name=newRepoName"

Обратите внимание, что repo_slug - это имя репозитория IN LOWER CASE. Если вы не укажете все в нижнем регистре, вы получите не столь выразительный ответ "Не найден".

Если вы не знаете, что такое пул репозитория, выполните следующую команду, которая показывает вам информацию о пользователе, включая текущие репозитории, и найдите поле "slug"

curl --user username:password https://bitbucket.org/api/1.0/user