Правильный ответ был уже в первом комментарии, но почему он не сработал у вас вы даже не захотели разобраться. Ну попросили же показать внешние ветки командой git branch -r? Разве это трудно было?
Команда clone по-умолчанию загружает ВЕСЬ внешний репозиторий, т. е. ВСЕ файлы. Но в рабочий каталог распаковывает только содержимое ОДНОЙ ветки — ветки main, если не было указано название конкретной ветки при клонировании. Если вам хочется работать в другой ветке, так и переключитесь в неё командой switch либо checkout.
Единственная причина, по которой у вас не сработал switch — ветки mainpage не было во внешнем репозитории в тот момент, когда вы его клонировали себе. И соответственно ветки не оказалось у вас в локальном репо. Чтобы загрузить свежие данные есть команда fetch.
Ваша команда по факту сделала fetch, но потом произвела слияние (merge) ветки mainpage в текущую ветку main. Смешали все файлы в одну кучу. Это скорее всего совсем не то, что вас попросили сделать в задаче. Дальше то что делать будете? Отправите другому программисту подправленную ветку main?
Впредь, если вам лень читать базовую документацию и хочется быстрых решений, то хотя бы помогайте нам понять что у вас там происходит. Тут же не телепаты. Мы знаем ответы, но какой именно подойдёт вам — угадать сложно. Отвечайте пожалуйста на наводящие вопросы.
PS. Подклю́чится и подключи́ться это абсолютно разные слова в русском языке )) Не путайте.
Black_Fire, что значит фраза «Скопировал ветку из другой ветки»? Ни в консольном Git, ни в плагине VSCode нет команды с таким названием.
Файлы точно отслеживаются? Скорее всего нет. Потому что изменение одной ветки в принципе не может повлиять на другие. В Git вообще сложно что-то удалить случайно.
Разве для macOS есть альтернативы Time Machine? Просто, надёжно и работает в фоне, не отнимая времени.
+ важные папки можно автоматом бэкапить в iCloud.
Ссылка могла бы прояснить ситуацию. Но понятно что у тебя проблемы с авторизацией. Ошибка в пароле или не прописаны ключи ssh или нет прав на репозиторий.
Не хватает информации для более точного ответа.
И проставь теги GitLab и Git. Проблема тут точно не в PyCharm
ищет комиты которых недостаёт локально и добавляет их если такие есть, но не трогает локальные комиты которых нет на сервере?
Всё так. Push и Pull это отправка в одну сторону, а не двусторонняя синхронизация.
Pull загрузит с внешней ветки только недостающие локально коммиты. Отправлять вовне он ничего не будет, для этого есть Push.
ettaluni, коммит делают не ради комментария, а чтобы зафиксировать и не потерять работу. В сообщении коммита пиши что угодно. До того как не запушил, ты всегда можешь подправить сообщения и сами коммиты.
Никогда не делай hard reset если в рабочем каталоге есть незакоммиченные данные.
Тебе достаточно было поправить неудачный коммит через --amend, а ты просто взял и похерил свою несохранённую работу этим ресетом. Reset ничего не удаляет из репо, но очень даже может удалить файлы из рабочего каталога.
И делай коммиты чаще, это же не сложно? Что закоммичео, то практически невозможно удалить, всё останется в репо и доступно через reflog.
Ты программист или кто? Напиши скрипт который сохранит лог всех проектов и отправит почтой начальнику и просто запускай его раз в месяц или доверь это планировщику.
youmixx, просто осознай, что push не отправляет файлы. Он отправляет во внешнюю ветку коммиты, которые есть у тебя в локальной ветке, но отсутствуют во внешней ветке.
Если ты не проиндексировал файл и не закоммитил, то гит про него вообще не знает и следовательно никуда не отправит его состояние.
edward_freedom, с десятком виртуальных рабочих столов, между которыми переключаешься одним жестом, необходимость в дополнительных мониторах как-то отпадает. Изредка подключаю внешний или вывожу картинку на телевизор через AirPlay, но основная работа всё равно на ретине, так как там глаза не так напрягаются.
MacBook удобнее и позволяет работать продуктивнее.
Retina разве есть на лаптопах с Ubuntu?
Trackpad тут работает как продолжение руки. Мышка после него кажется неудобной.
Подсветка клавиатуры рулит, почти не встретишь подобного у других.
И ещё 100500 мелочей, из-за которых пришлось выкинуть все домашние PC, так как перестал пользоваться.
Aryeh Leonid R., хранить специфические настройки клиентов можно в выделенных ветках. Главное не светить пароли в открытом доступе. Учётные данные выносятся обычно в отдельный файл и он не хранится в репозитории а добавляется в проект уже на месте, например копированием из файла .example, чтобы осталось вписать только сами пароли.