LINUX.ORG.RU

Сломался SourceTree + GIT + BitBucket

 ,


0

1

Сегодня перестал пушить на сервер битбакета. Аутентификация была OAuth + HTTPS.

Попробовал другие разные способы аутентификации (SSH Keys, Basic) - ничего не заработало!

SourceTree под оффтопиком.

Есть инфа?



Последнее исправление: pup_kin (всего исправлений: 1)

Санкции

anonymous
()

У меня из командной строки пушится.

Beewek ★★
()

Значит так, исправил ошибку, помог только переход на транспортный протокол SSH и SSH-аутентификацию. Ниже по шагам, что нужно сделать под Шиндовс 10:

  1. Создать в удобном месте на диске папку под SSH-ключи.

  2. Далее, в этой папке создаём по инструкции (вторая из выдачи яндекса) https://mywebpc.ru/windows/sgenerirovat-klyuch-ssh-windows-10/ ключи SSH. Их два будет, как обычно, закрытый (лежит на локальном компе) и открытый (выложим на битбакет).

  3. Открываем Битбакет, слева снизу ваша аватарка, жмём на неё и выбираем «Personal Settings»

  4. Выбираем «SSH-ключи». Жмём кнопку добавления. Открываем на диске в текстовом редакторе ПУБЛИЧНЫЙ ключ из той пары ключей, что сгенерировали во 2 пункте. Вставляем его в соответствующее поле и жмём кнопку добавления.

  5. Идём интерфейсе битбакета в пункт меню «Пароли приложения». Там создаём новый пароль, сразу его копируем и сохраняем в текстовый файл на диске, потом посмотреть его в интерфейсе нельзя, доступно только удаление. Этот пароль нужно в клиенте использовать вместе с именем учётки на битбакете, настоящий пароль учётки не проканает. Ещё не устали? Я уже да.

  6. Идём в SourceTree. Нажимаем меню «Инструменты» -> «Настройки». Вкладку «Аутентификация». Там добавляем аккаунт VCS-хостинга. В нашем случае тип «Bitbucket» и «Предпочитаемый протокол» - «SSH». Ниже идут учётные данные. Выбираем в дропбоксе «Аутентификация» тип «BASIC», потому что авторы битбакета что-то сейчас мутят с поддержкой аутентификации «OAUTH». В поле «Имя пользователя» пишем пользователя, который у нас зарегистрирован на битбакете, из под которого мы планируем доступ на запись к репозиториям. Ниже появится кнопка «Обновить пароль». Нажимаем её, и вставляем в появившемся окошке пароль из пункта 5. Если всё ОК, то SourceTree покажет зелёную галочку и подгрузит аватарку вашего пользователя bitbucket.

  7. Настройку сервера и клиента вроде завершили. Но и это ещё не всё! Теперь нужно перевести все репозитории на использование протокола SSH вместо HTTPS ! То есть для каждого репозитория настроить ORIGIN. Для этого:

7.A. Откройте очередной репозиторий в битбакете. Разыщите кнопку клонирования и выберите тип клонирования SSH. Там появится команда командной строки (извините за тавтологию), так вот их неё нужно скопировать только URL, то есть последний в строке фрагмент.

7.B. Откройте в SourceTree локальную копию вашего репозитория, ссылку на клонирования которого мы в предыдущем шаге скопировали. Справа сверху будет кнопка «Настройки». Нажимаем её, и открываем список удалённых репо для нашего локального. Выбираем удалённый репо, нажимаем кнопку «редактировать». В поле «URL/путь» вводим скопированную ссылку. У меня там была ссылка в формате доступа HTTPS, которую я и не настраивал. Когда я устанавливал себе SourceTree, то всё обошлось простым кликаньем и выглядело удобно и быстро. Теперь там нужна (и будет) ссылка под протокол SSH.

7.C. Последнее. В том же окошке настройки удаленного репозитория осталось выбрать ранее настроенный «Remote Account».

Ну вот, этот ужас окончился! Всё заработало.

P.S. Здесь я вместе с вами увидел очень жестокую «эрозию ПО». Такая ситуация повсеместна, все знают о новой профессии - DevOps, это люди которые как раз и настраивают подобный ужас. Становясь теми, кто заполняет расселину в рабочих задачах между программистами и админами. И это вместо нормальных механизмов для тех и для других.

pup_kin
() автор топика
Последнее исправление: pup_kin (всего исправлений: 4)
Ответ на: комментарий от pup_kin

Такая ситуация повсеместна, все знают о новой профессии - DevOps, это люди которые как раз и настраивают подобный ужас. Становясь теми, кто заполняет расселину в рабочих задачах между программистами и админами

Вот и выросло поколение программистов, неспособных настроить IDE. Теперь для этого нужен целый devops, тьху...

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Но а кто пишет такие IDE, которые нужно программисту НАСТРАИВАТЬ вместо того, чтобы РАБОТАТЬ?

Видимо предыдущее поколение программистов.

pup_kin
() автор топика
Последнее исправление: pup_kin (всего исправлений: 1)
Ответ на: комментарий от static_lab

Так а зачем тогда мучился через SourceTree?

В SourceTree есть нужные мне функции, которые я консольным ГИТом (к своему стыду), до сих пор не научился делать. Кроме того, в ГУЙне есть так любимое мною дерево с ветками и коммитами, очень удобно. Ну и в целом, в GUI больше плотность информации на квадратный сантиметр, открыл окошко и всё видишь, а в консольке придётся для этого побегать по клавиатуре, дать несколько команд, чтобы получить ту же информацию.

pup_kin
() автор топика
Последнее исправление: pup_kin (всего исправлений: 4)
Ответ на: комментарий от pup_kin

Здесь я вместе с вами увидел очень жестокую «эрозию ПО». Такая ситуация повсеместна, все знают о новой профессии - DevOps, это люди которые как раз и настраивают подобный ужас. Становясь теми, кто заполняет расселину в рабочих задачах между программистами и админами. И это вместо нормальных механизмов для тех и для других.

Добро пожаловать в волшебный мир копроэкономики.

hobbit ★★★★★
()
Ответ на: комментарий от pup_kin

Так можно ведь через консоль быстренько настроить origin, а потом спокойно использовать GUI для тех вещей, которые тебе в GUI удобнее делать. Зачем самого себя мучить?

static_lab ★★★★★
()
Ответ на: комментарий от static_lab

Так можно ведь через консоль быстренько настроить origin, а потом спокойно использовать GUI для тех вещей, которые тебе в GUI удобнее делать. Зачем самого себя мучить?

Ну так ведь там не только origin настроить нужно было. Там ещё и учётные данные надо было прописать, пароли сгенерировать, ключики RSA опять-же сгенерить и раскидать по клиенту и серверу. А просто origin из консоли я побоялся настраивать, потому что засомневался в возможности SourceTree брать настройки из стандартного гитовского файла. Может он и умеет это, но я пробовать не стал. Потом проверю как-нибудь.

pup_kin
() автор топика
Последнее исправление: pup_kin (всего исправлений: 3)
Ответ на: комментарий от pup_kin

Да вообще все существующие GUI — это фронтенды или к git, или к libgit. Сами они ничего в репозитории не решают.

static_lab ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.