Как подключится к одной из веток удаленного репозитория?
Есть репозиторий в котором мне нужно выполнить задачу. Он не мой, был создан другим программистом, который дал мне доступ к нему, чтобы там доработать один код.
Суть в том, что код, над которым мне предстоит работать находится на одной из веток репозитория. Т.е. там есть ветка main и ветка mainpage. Мне нужна ветка mainpage.
При использовании команды git clone <ссылка>, мне подгружаются файлы из ветки main.
Я только начинаю изучать git, поэтому, чтобы не наделать с чужим кодом делов, прошу в ответе написать пошаговую инструкцию как мне подключиться к ветке mainpage и получить от туда файлы, чтобы в дальнейшем в ней работать.
Ответы со ссылками на документацию git прошу не давать, поскольку уже пыталась по ней найти ответ, но пока не до конца со всем разобралась, а сделать нужно по-быстрее, почему и обращаюсь через Хабр.
Ну а может просто не давать ответ, который в самом вопросе просили не давать?
Для меня вопрос срочный, в гите - новичок. Код - чужой и наделать проблем не хочу.
Если не знаете ответ, просто не отвечайте.
А если знаете, но просто не хотите, то тем более не отвечайте.
П.с. море сочувствия ученикам, чей преподаватель на их вопросы по его предмету отвечает, иди и почитай учебники/материалы, а меня не спрашивай.
в данном случае имеем ситуацию "мне нужно построить мост, дайте мне пошаговые инструкции, а не отправляйте изучать всякую фигню типа сопромата!"
П.с. море сочувствия ученикам, чей преподаватель на их вопросы по его предмету отвечает, иди и почитай учебники/материалы, а меня не спрашивай.
море терпения учителям, которые двадцать раз освещали вопрос на лекциях, который расписан в учебниках, но к которым в очередной раз подходят ученики с вопросом "а как мне на ветку в гите переключиться?"...
BorLaze, советую в следующий раз читать вопросы более внимательней.
Причиной вопроса не было обучение пользованию гита через механическое выполнение пошаговых инструкций без понимание сути работы гит, а срочность.
Я прекрасно понимаю, что обучение должно состоять из изучение необходимой документации для понимания принципов работы любого язывка программирования или работы, что я и так собиралась сделать и без вашего упоминания, но сделать нужно срочно и времени на изучение жжокументации нет.
море терпения учителям, которые двадцать раз освещали вопрос на лекциях, который расписан в учебниках, но к которым в очередной раз подходят ученики с вопросом "а как мне на ветку в гите переключиться?"...
А им ваше терпение и даже мнение не нужно. Любой нормальный перподаватель понимает, что материал каждым учеником осваивается по-разному времени и форме и ничего зазорного в том, что ученик подойдет к учителю и задаст дополнительные вопросы по ранее прочтенной лекции нет.
И самое главное вас тут меня учить никто не просил, а просто задали вопрос и пояснили там же, что срочно, поэтому времени на изучение документации нет.
Спасибо тем, кто постарался помочь и дать ответ на вопрос, а не пустился в очередное и так часто встречаемое на форумах и в чатах самовозвышение "... чё, рук что-ли нет погуглить или документацию почитать?!".
когда человек подписывается на какую-то работу ("чтобы там доработать один код"), как-то подразумевается, что
а) человек может это сделать
б) если человек чего-то не может сделать, то он готов освоить знания в тех областях, где он "плавает"
но никоим образом, никто и никогда, не воспримет всерьез человека, который заявляет:
- да, я могу написать роман! запросто!
- только дайте мне четкие инструкции, когда ставить в конце предложения восклицательный знак, когда вопросительный, а когда точку.
- что вы меня посылаете учебник читать? самовозвышаетесь, штоле?
BorLaze, я понимаю вашу точку зрения, но не соглашусь с ней потому что:
1) я не писала, что заявляла им, что знаю как работать с гитом, наоборот я пояснила это заранее, но поскольку мы там все новички, работа не оплачиваемая, а другие не согласились, попросили меня, потому что я могла помочь именно с кодом;
2) я уже поясняла в вопросе, что пока только учусь и на счет знания работы с гитом, меня просто попросили поискать ответа, поскольку среди ребят тоже опытных пользователей гита нет, они его просто смогли залить в созданный ими репозиторий;
3) мой главный поинт в том, что если не знаешь ответа, зачем все это писать? Просто так от скуки? Если ответа на вопрос не знаете, просто ничего не пишите, зачем тратить время на бесполезные ответы? Просто так от скуки? Даже если ответ известен, но просто не хочется его расписывать и тратить свое время, опять же, зачем вообще что-либо писать и тратить свое время?
Просто ваш ответ не дал какого-либо результата и не разрешил упомянутую проблему.
Lynn «Кофеман», он у меня просто не види другие ветки.
После клонирование репозитория в папке с проектом появились файлы с ветки main, суть в том, что других веток он просто не видит, команды git branch или git chekout <...> ничего не дают, терминал просто не видит других веток.
Окей народ, я методом проб я нашла ответ.
Не знаю насколько он верен, но задачу он выполнил.
Помогла команда: git pull origin mainpage, где mainpage это ветка, с которой мне нужны были файлы.
П.с. спасибо тем, кто действительно постарался помочь мне своими ответами.
Правильный ответ был уже в первом комментарии, но почему он не сработал у вас вы даже не захотели разобраться. Ну попросили же показать внешние ветки командой git branch -r? Разве это трудно было?
Команда clone по-умолчанию загружает ВЕСЬ внешний репозиторий, т. е. ВСЕ файлы. Но в рабочий каталог распаковывает только содержимое ОДНОЙ ветки — ветки main, если не было указано название конкретной ветки при клонировании. Если вам хочется работать в другой ветке, так и переключитесь в неё командой switch либо checkout.
Единственная причина, по которой у вас не сработал switch — ветки mainpage не было во внешнем репозитории в тот момент, когда вы его клонировали себе. И соответственно ветки не оказалось у вас в локальном репо. Чтобы загрузить свежие данные есть команда fetch.
Ваша команда по факту сделала fetch, но потом произвела слияние (merge) ветки mainpage в текущую ветку main. Смешали все файлы в одну кучу. Это скорее всего совсем не то, что вас попросили сделать в задаче. Дальше то что делать будете? Отправите другому программисту подправленную ветку main?
Впредь, если вам лень читать базовую документацию и хочется быстрых решений, то хотя бы помогайте нам понять что у вас там происходит. Тут же не телепаты. Мы знаем ответы, но какой именно подойдёт вам — угадать сложно. Отвечайте пожалуйста на наводящие вопросы.
PS. Подклю́чится и подключи́ться это абсолютно разные слова в русском языке )) Не путайте.