Git как перейти в папку
Перейти к содержимому

Git как перейти в папку

  • автор:

Как создать или изменить папку на Git Bash

Хранилище в вычислительной технике известно как центральное место, в котором хранятся и управляются данные. Таким образом, репозиторий Git представляет собой центральное хранилище, в котором будут храниться и управляться все файлы проекта. Git repository-это папка внутри вашей системы, в которой находятся все файлы вашего проекта. Он позволяет сохранять версии вашего кода, так что вы можете получить к ним доступ в любое время. В вашей системе git repository — это простая папка, как и многие другие папки.

Поскольку теперь мы очень близки к тому, чтобы начать выполнять действия Git, но мы должны знать несколько общих команд каталогов на Git Bash, чтобы сделать процесс простым. К ним относятся:

  • Изменение каталога с помощью Git Bash
  • Создание каталога с помощью Git Bash
  • Посмотреть все каталоги в Git Bash

Как изменить каталог через Git Bash?

Изменение каталога очень важно, так как при работе с Git Bash вы постоянно перемещаетесь между разными каталогами. Каталог (директория) — это технический термин для обозначения папки. Вы можете изменить каталог двумя способами:

  • Непосредственно через Git Bash с помощью команд
  • Открыв Git Bash в нужной папке

Перейдите в нужный каталог с помощью команд в Git Bash

Вы можете изменить каталог внутри Git Bash с помощью команды cd. Команда cd обычно используется в оболочке вашей системы (cmd) для той же цели. Перейдите в каталог ToolsQA с помощью команды cd

  1. Откройте свой Git Bash.
  2. Введите следующую команду cd и нажмите клавишу enter.

Как создать или изменить папку на Git Bash

Примечание: ToolsQA — это папка внутри диска E в данном примере.

Откройте Git Bash прямо в папке

Изменение каталога через открытие его в той же папке — это довольно прямолинейно. Для этого перейдите в каталог, который вы хотите изменить.

После этого щелкните правой кнопкой мыши в любом месте каталога = > откройте Git Bash Here.

Откройте Git Bash прямо в папке

После того, как мы научились изменять рабочий каталог, мы можем создать репозиторий в любой папке проекта, где нам нужно работать. Для создания репозитория мы сначала создадим папку, в которой будем работать.

Как создать новый каталог с помощью Git Bash?

Создание каталога с помощью Git Bash — это всего лишь простая команда, которая также используется в системах Linux. Хотя вы можете создать каталог, используя обычный метод создания новой папки, но используйте Git Bash для максимально возможной работы. Давайте посмотрим, как создать каталог с помощью Git Bash.

  1. Откройте Git Bash.
  2. Перейдите в каталог, в котором вы хотите создать папку.
  3. Введите следующую команду mkdir и нажмите клавишу enter, чтобы создать каталог.

mkdir

Примечание: запомните, что, если вы упоминаете более одного слова имени каталога не в кавычках, он создаст два каталога. Это мы увидим в следующем разделе, а затем удалим эти папки и создадим один каталог под названием «First Project».

Как просмотреть все каталоги в Git Bash?

Теперь, когда мы создали папку, мы также должны знать, как посмотреть на все каталоги/папки внутри нашего рабочего каталога.

1.Перейдите в директорию, в которой вы хотите видеть каталоги (ToolsQA)

  1. Введите следующую команду ls и нажмите клавишу Enter. Все каталоги будут видны вам.

command ls

Примечание: стоит отметить, что ls не будет показывать скрытые папки. Вам нужно использовать ls-a для этого.

Как удалить папку

Вы можете удалить каталог, используя команду rmdir с именем каталога.

rmdir command

Примечание: mk означает make, а rm Remove.

Теперь мы все настроены на инициализацию Git внутри нашего каталога проектов. Как уже упоминалось выше, нам нужно знать о команде git init для создания репозитория. Мы кратко рассмотрим команду git init в следующей статье.

git pull

В последнем уроке мы познакомились с командой Git fetch и Read more

Git Fetch и Git Merge

В одной из последних статей мы узнали о команде Git Read more

Мы уже знаем, как вносить изменения в локальное хранилище и Read more

Git Push

Команда git push при выполнении перемещает изменения, внесенные пользователем на Read more

Что такое git Clone и как клонировать репозиторий?

«Клонирование» означает создание идентичных особей естественным или искусственным путем. Клонирование Read more

Git Fork

Сегодня мы узнаем, как скопировать чужой репозиторий в наш аккаунт Read more

[Студентам] Советы изучающим 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

После клонирования репозитория hexlet-git мы можем увидеть внутри него директорию .git и добавленные нами файлы. Посмотрим, что произойдет, если удалить один из файлов:

rm PEOPLE.md git status On branch main Your branch is up to date with 'origin/main'. Changes not staged for commit: (use "git add/rm . " to update what will be committed) (use "git restore . " to discard changes in working directory) deleted: PEOPLE.md no changes added to commit (use "git add" and/or "git commit -a") 

Git сообщает, что файл был удален, и предлагает команды для восстановления или коммита изменений. Здесь стоит остановиться и немного погрузиться в то, как работает git. Откуда он вообще знает, что файл был удален? Ответ на этот вопрос вы узнаете в этом уроке.

Как узнать статус репозитория

Внутри директории проекта мы видим файлы проекта с одной стороны и директорию .git с другой.

Репозиторием является именно директория .git. Она хранит всю информацию о том, какие были изменения, а также сами изменения.

А вот все, что находится снаружи, это так называемая рабочая директория (working directory). Эти файлы извлекаются из .git в момент клонирования.

Каждый раз, когда мы производим изменения в рабочей директории, Git сравнивает измененные файлы с файлами внутри .git, то есть их состоянием на момент последнего коммита. Если есть изменения относительно последней зафиксированной версии, то Git сообщает нам об этом в выводе команды git status .

В этом очень легко убедиться, если последовать совету Git в выводе выше и восстановить удаленный файл:

date with 'origin/main'. nothing to commit, working tree clean # Сам файл вернулся таким, каким он был на момент последнего коммита 

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

Еще мы можем закоммитить их, если это нужно:

rm PEOPLE.md # Любое изменение нужно добавлять в индекс git add PEOPLE.md git commit -m 'remove PEOPLE.md' [main e15afd2] remove PEOPLE.md 1 file changed, 1 deletion(-) delete mode 100644 PEOPLE.md # Теперь этот файл пропал из рабочей директории 

Обратите внимание на важную деталь. Независимо от того, удаляем мы файл, добавляем или меняем, процедура выполнения коммита не меняется. После изменений всегда делается git add , который подготавливает изменение к коммиту (а не добавляет файл). После этого выполняется коммит.

Кстати, у Git есть команда git rm , которая объединяет в себе удаление и подготовку к коммиту:

rm PEOPLE.md # Равносильно rm + git add 
Самостоятельная работа
  1. Выполните все шаги из урока
  2. Удалите файл NEW.md и сделайте коммит
  3. Добавьте файл INFO.md с текстом git is awesome! и сделайте коммит
  4. Залейте изменения на GitHub с помощью git push
  5. Обновите страницу репозитория на GitHub и изучите произошедшие изменения

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Об обучении на Хекслете

  • Статья «Как учиться и справляться с негативными мыслями»
  • Статья «Ловушки обучения»
  • Статья «Сложные простые задачи по программированию»
  • Урок «Как эффективно учиться на Хекслете»
  • Вебинар « Как самостоятельно учиться »

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов

Наши выпускники работают в компаниях:

Смена каталога с помощью cd

Смените каталог легко, если вы знаете где вы находитесь в данный момент (ваш текущий каталог) и куда вы хотите отправиться. Каталог, в который вы хотите попасть, выше или ниже текущего?

Чтобы сменить каталог, выполните команду cd . Команда в таком виде перенесёт вас в ваш домашний каталог; чтобы перейти в другой каталог необходимо указать путь к нему.

Вы можете использовать абсолютные или относительные пути. Абсолютные пути указываются от верхнего каталога / (называемого корнем) до указанного каталога; относительные пути указываются от текущего каталога, где бы он не находился. Дерево, показанное ниже, приведено в качестве примера, помогающего понять команду cd .

/ directory1 directory2 directory3

Если вы находитесь в directory3 и хотите перейти в directory1 , вы должны подняться в дереве каталогов выше.

Если вы введете:

находясь в каталоге directory3 , вы получите сообщение об ошибке, сообщающее о том, что нет такого каталога. Это происходит потому что, действительно, нет каталога directory1 в каталоге directory3 .

Чтобы подняться к каталогу directory1 , вы должны ввести:

Это абсолютный путь. Он указывает Linux начать сверху и опуститься в каталог directory1 .

Запомните, абсолютные пути перенесут вас В любой каталог ИЗ любого, а относительные пути, перенесут вас в каталоги, расположенные ниже текущего.

Рисунок 10-3. Абсолютные пути указывают полный путь

Как отличить относительный путь от абсолютного?

Путь является абсолютным, если первый символ в нём / ; в противном случае это относительный путь.

Рисунок 10-4. Относительные пути указываются относительно текущего расположения

Ниже приведено упражнение с относительными и абсолютными путями. В вашем домашнем каталоге введите относительный путь:

Команда cd .. указывает системе подняться на один уровень выше текущего каталога. Очевидно, команда cd ../.. перенесёт вас выше на два каталога.

Выполнив полностью команды этого примера, вы должны оказаться в каталоге /X11 , в котором хранятся конфигурационные файлы и каталоги, относящиеся к X Window System.

Взгляните на последнюю команду cd . Вы должны указать системе:

Подняться на один уровень выше к родительскому каталогу вашего домашнего каталога (вероятно, это будет /home )

Затем поднимитесь к родительскому каталога текущего (вероятно, вы окажетесь в / )

Затем спуститесь к каталогу etc

Наконец, перейдите в каталог /X11

Укажите абсолютный путь, чтобы быстрее перейти к каталогу /X11 . Введите:

Проверьте, где вы находитесь

Всегда проверяйте где вы находитесь, прежде чем указать относительный путь к каталогу или файлу. Однако если вы будете использовать абсолютные пути, вам не придётся задумывать об этом. Если вы не знаете, где вы находитесь, введите pwd .

Таблица 10-2. Параметры команды cd

КомандаФункция
cd переносит вас в ваш домашний каталог
cd ~ также переносит вас в ваш домашний каталог
cd / переносит вас в корневой каталог всей системы
cd /root переносит вас в домашний каталог пользователя root, или супер-пользователя, учётной записи, созданной во время установки системы
cd /home переносит вас в каталоге home, в котором находятся каталоги пользователей
cd .. переносит вас на один уровень выше
cd ~otheruser переносит вас в домашний каталог пользователя otheruser , если только пользователь otheruser дал вам соответствующие разрешения
cd /dir1/subdirfoo Вне зависимости от того, где вы находитесь, этот абсолютный путь перенесёт вас прямо в каталог subdirfoo , подкаталога, вложенного в dir1
cd ../../dir3/X11 Этот относительный путь сначала поднимет вас на два уровня выше, затем спустит в dir3, и наконец, в каталог X11.

Теперь когда вы начали понимать как менять каталоги, посмотрите, что произойдет, если вы перейдёте в домашний каталог пользователя root (суперпользователя). Введите:

Если вы не зарегистрированы под именем root, при обращении к этому каталогу вы получите сообщение «в доступе отказано».

Запрещая доступ к учётным записям root и других пользователей (или их домашним каталогам), ваша система Linux защищается от случайного или преднамеренного повреждения. Обратитесь к разделу Владение и разрешения

Чтобы перейти в каталог root, воспользуйтесь командой su . Введите эту последовательность команд:

[newuser@localhost newuser]$ su Password: ваш пароль root [root@localhost newuser]# cd /root [root@localhost /root]#

Как только вы введете правильный пароль root, вы заметите, что ваше приглашение изменилось и теперь в нём отмечено ваше звание суперпользователя, в начале приглашения учётной записи root отображается символ «#» (как показано на Рисунке 10-5 ).

Рисунок 10-5. Превращение в root

Теперь, если вы выполните cd для перехода к домашнему каталогу пользователя root, вы получите к нему доступ.

Завершив работу под именем root, просто введите в приглашении exit .

[root@localhost /root]# exit exit [newuser@localhost newuser]$

Назад Начало Вперед
Определение вашего текущего каталога с помощью pwd Вверх Просмотр содержимого каталога с помощью ls

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *