Читайте также:
6

? Советы изучающим git Периодически от студентов...

? Советы изучающим git

Периодически от студентов приходят вопросы о работе системы контроля версий Git. Частая причина возникновения этих вопросов — непонимание разницы между репозиторием и обычной папкой.

Вот небольшая заметка на эту тему. Давайте разберемся, как работать с папками и репозиториями с точки зрения практики, то есть без строгих определений.

Пункт 1. Про папки и репозитории
Если папка — это то, к чему мы все привыкли как пользователи компьютеров, то репозиторий — это что-то новое, что нужно создать, инициализировать. Сам по себе репозиторий без наших указаний не появляется. Репозиторий в наших задачах — это папка, над которой были произведены некоторые действия, и Git в ней начинает выполнять свои задачи, например:

отслеживать изменения файлов;

хранить информацию о ветках.

Важно! Репозиторий не возникает сам по себе, его нужно создать.

Пункт 2. Как понять, в репозитории мы находимся или в папке
Самый простой способ это сделать — набрать в терминале команду «git status». Если в ответ вы увидите ошибку «fatal: not a git repository (or any of the parent directories): .git», значит, в терминале вы вызываете команду не из репозитория, а из обычной папки. Если вы увидели что-то другое, то вы находитесь в репозитории или внутри одной из папок, которая находится в нем.

Важно! Репозиторий отслеживает изменения во всех вложенных в него папках.

Если вы сделаете репозиторием корневую папку на диске C (не делайте этого!), то весь ваш диск станет репозиторием и Git будет пытаться отслеживать все изменения на этом диске. Создаем репозитории очень аккуратно.

Пункт 3. Как можно создать репозиторий
Чаще всего на начальных этапах рассматривают два способа создания репозитория:

Если мы находимся в папке (!) и хотим сделать из нее репозиторий, то вызываем команду «git init», и эта папка становится репозиторием.

Если мы хотим клонировать репозиторий из GitHub на свой ПК, то мы пользуемся командой «git clone». При этом обратите внимание: не нужно пользоваться командой «git init», команда clone не только скачивает файлы из интернета, но и инициализирует репозиторий в скачанной папке. На самом деле она делает сильно больше, но нам важно, что в скачанной папке у нас уже будет репозиторий и никак дополнительно инициализировать его не надо.

Пункт 4. Внимательно следим за тем, из какой папки вы вызываете команды
Терминал всегда показывает, в какой папке вы сейчас находитесь, но первое время студенты чаще смотрят на то, какая папка открыта в визуальном интерфейсе редактора (например, VSCode), а не на то, что написано в терминале. Обращайте, пожалуйста, внимание на название папки, которая указана в приглашении к вводу команд терминала. До тех пор, пока вы не привыкнете к работе с терминалом, внимательно следите за тем, что вы создаете репозитории только во вновь созданных для урока папках. Не нужно создавать репозитории из рабочего стола или других больших папок.

Пункт 5. Не нужно создавать репозитории внутри другого репозитория
Повторюсь: не нужно создавать репозиторий внутри репозитория. Прежде чем вызывать команды «git init» или «git clone», сначала убедитесь, что вы точно не внутри репозитория. Вызовите «git status» и убедитесь, что вы находитесь в папке, а не в репозитории. Если «git status» выдал ошибку «fatal: not a git repository (or any of the parent directories): .git», значит, вы в этой папке можете воспользоваться одним из способов создания репозитория, рассмотренным выше и на лекциях. Либо «git init», либо «git clone», но не обоими одновременно.

Важно! Иногда студенты сначала вызывают «git init» и потом «git clone». Но тем самым вы нарушаете правило не создавать репозиторий внутри репозитория. Обращайте на это внимание.

Пункт 6. Как репозиторий сделать обычной папкой
Когда вы создаете репозиторий, у вас в папке появляется новая скрытая папка с названием «.git». Это специальная папка, в которой хранится все, что необходимо для работы системы контроля версий. Если вы удалите эту папку, то потеряете всю историю, которую Git успел сохранить, но при этом превратите ваш репозиторий обратно в папку.

Итак, чтобы из репозитория снова сделать папку, достаточно всего лишь удалить скрытую папку «.git». При этом вы потеряете историю, которую собрал Git (все коммиты, ветки и т. п.), но файлы в самой папке останутся в том же виде, в котором они были в момент удаления папки «.git».

Пункт 7. Что делать, если все вокруг стало репозиторием
У студентов, которые неаккуратно вводят команду «git init», такое встречается. Поэтому давайте разберемся, что делать в такой ситуации. Надо проверить, успели ли вы уже совершить такую ошибку. Создайте новую пустую папку, например на рабочем столе, и в терминале вызовите «git status» в этой папке. Если вы увидите «fatal: not a git repository …», то радуемся. Все у вас в порядке.

Если же вы увидели что-то другое, значит, ваша вновь созданная папка является частью какого-то другого репозитория. Важно: мы только что создали новую папку и внутри нее никаких команд кроме «git status» не вызывали, то есть мы не создали сейчас новый репозиторий, но Git при этом не говорит нам, что это «not a git repository». Это может быть только в том случае, если вы эту новую папку создали уже внутри другого репозитория, то есть чуть раньше сделали репозиторием ваш рабочий стол или даже весь ваш диск C. Вылечить такую ситуацию можно следующим образом: нужно найти репозиторий, который вы создали по ошибке, и сделать его обратно папкой (см. предыдущий пункт — нужно удалить папку .git).

Если вы работаете на Windows, включите отображение скрытых файлов и папок, так как папка .git скрытая. Далее начинаем подниматься по иерархии папок вверх и искать в них папки «.git». Например, если вы создали папку по адресу «C:\Users\User\Pictures\ControlCenter\Scan», то сначала проверяете папку Scan, потом проверяете папку ControlCenter, потом Pictures и так далее, пока не найдете скрытую папку .git. Когда нашли и удалили, проводим проверку из начала этого пункта заново.

Успехов в освоении Git и терминала!

#git@pylounge

? Советы изучающим git Периодически от студентов...
8

Потеряли карты в зелёном чехле ( соцкарта, сбербанк,...

Потеряли карты в зелёном чехле ( соцкарта, сбербанк, карта пяторочки). В подслушано выложили , что их нашли и ищут владельца. Девушка на переписку и звонки не отвечает . Надеюсь увидит объявление и свяжется со мной. Спасибо.

Потеряли карты в зелёном чехле ( соцкарта, сбербанк,...
21

Анонимно. Подскажите какое первое авто можно купить...

Анонимно. Подскажите какое первое авто можно купить для девушки за 1-1.2млн, на автомате, чтобы не убитая была, с кондеем и подогревом сидений. Русский автопром не нравится. Реально щас за эти деньги найти не корыто?? лепёшки типа матиза не нравятся. Седан не длинный или хэчбек. И до какого пробега лучше смотреть?

Анонимно. Подскажите какое первое авто можно купить...
45

Вдруг кому то не лень дочитать? Нашла в обсуждениях...

Вдруг кому то не лень дочитать? Нашла в обсуждениях инета. Подписываюсь под каждым словом. Анонимно -Воронеж ж?
У любого здания есть фундамент, основа, если с фундаментом начинаются проблемы рушится весь дом. Для человека фундамент это сочувствие и сострадание, причём в каждом! и умение пожалеть, это только в кино, жалость осуждают, на самом деле, умение жалеть это очень тяжёлый дар, но очень нужный... В нашем обществе люди перестали жалеть, перестали чувствовать чужую боль, но при этом требуют чтобы понимали и сочувствовали им, то есть получается игра в одни ворота, а так не бывает, не получается, это как бетон в фундаменте, а у нас сейчас в качестве бетона выступают расчёт и выгода, причём снова в одностороннем порядке, если мне выгодно, то на остальных плевать. Если я вижу бездомные животное, мне жалко его здесь и сейчас, я просто чувствую, как оно хочет есть, так сильно, что желудок сводит от боли... и как то забывается, что потенциально эта собака или кошка могут быть опасны и я стараюсь сделать то, что могу - накормить. Раньше я забирала к себе таких животных и находила им хозяев, сейчас этих животных стало так много, что все мои друзья и знакомые уже "одарены" кошкой или собакой или к сожалению, относятся к тому типу людей для которых чужая боль, это чужие проблемы и им никого не жалко, кроме себя любимых. Как вы написали - потенциальная угроза, необходимо изъять, чтобы не мешали... только это не поможет, сегодня вы их "изымите", а завтра все дворы снова наполнятся бездомными животными. Потому что в первую очередь опасны люди, причём не потенциально, а вполне реально, люди которые не отягощены духовностью, чувством сострадания и милосердия, они выбрасывают приплод и своих надоевших питомцев сегодня и также будут поступать завтра и так до бесконечно, пока не изменится мораль, пока в головах не появится наполненность, чем то кроме собственной выгоды, причём любым путем. А сейчас ещё предлагают убивать этих животных и получится кровавый конвейер и к чему мы придём? Не верьте людям, которые, спекулируя заботой о детях, призывают "изъять" животных с улиц, им наплевать на детей и вообще на людей, они не способны к состраданию и сочувствию в принципе.
Поэтому, по моему глубокому убеждению, нужно разбираться с фундаментом, нужно поднимать ценность таких понятий как человечность и гуманность. Воспитывать в людях ответственность, милосердие, сострадание... Как ? Ставить автоматы с кормом для бездомных животных, размещать собачьи площадки рядом с детскими, проводить уроки добра, учить детей не бояться собак, а любить их, возить школьников в приюты для животных, чтобы дети учились ответственности и милосердию, разрешать и поощрять, ставить в пример, те учреждения которые в холодное время года пускают животных погреться...
Наверное слышали такое высказывание - не делай другим того, чего не желаешь себе. Так вот, я не желаю себе жить в обществе которое основывается на жестокости и где личная выгода превыше всех норм человеческой морали, я не желаю себе, чтобы когда я перестану приносить ползу, а буду нуждаться в помощи, быть выкинутой на помойку в холод и голод, я не желаю себе, чтобы понятие - добрый, стало ругательным, устаревшим и никому не нужным.

Вдруг кому то не лень дочитать? Нашла в обсуждениях...
Еще посты

Популярные теги:

Свежие комментарии:

Ишареснота 2 недель назад к записи
Говнюк
Валерия 2 недель назад к записи
Раньше было гораздо ахуенее, ну и сейчас тоже пойдёт, не могу понять она отращивает волосы? Малышка🔥
Юлия 2 недель назад к записи
Иногда Аля кокетничает по-русски
Петр 3 недель назад к записи
есть туториал по постройке ?
Nez 1 месяцев к записи
И где?