Управление файлами
Вы можете создавать, изменять, перемещать и удалять файлы в репозитории непосредственно в GitHub или в командной строке.
Создание новых файлов
Вы можете создавать новые файлы непосредственно в GitHub в любом репозитории, для которого у вас есть доступ на запись.
Добавление файла в репозиторий
Можно отправить и зафиксировать существующий файл в репозиторий GitHub или с помощью командной строки.
Перемещение файла в новое расположение
Вы можете перенести файл в другой каталог в GitHub или с помощью командной строки.
Изменение файлов
Вы можете редактировать файлы непосредственно в GitHub в любом репозитории с помощью редактора файлов.
Переименование файла
Любой файл в репозитории можно переименовать непосредственно в GitHub или с помощью командной строки.
Удаление файлов в репозитории
Вы можете удалить отдельный файл или весь каталог в репозитории на GitHub.
Настройка отображения измененных файлов на GitHub
Чтобы по умолчанию отдельные файлы отображались в diff или учитывались в языке репозитория, их можно пометить атрибутом linguist-generated в файле gitattributes.
Как добавить папку на GitHub
GitHub — это отличный инструмент для хранения и совместной работы над вашими проектами с использованием системы управления версиями Git. В этой статье мы расскажем о том, как добавить папку на GitHub, а также о других полезных действиях, связанных с работой с папками.
1. Как создать папку в GitHub
Для того чтобы создать папку на GitHub, вам необходимо добавить хотя бы один файл. Если у вас есть задача «просто создать папку», то вы можете добавить файл с названием `.gitkeep`. Это «говорящее» имя файла, которое обозначает, что этот файл был создан исключительно для того, чтобы система Git знала о существовании папки.
2. Как добавить пустую папку в Git
Однако Git не может добавить пустую папку, поэтому внутри нее необходимо разместить хотя бы один файл. Сообщество разработчиков согласно рекомендует использовать название `.gitkeep` для таких файлов.
3. Как связать папку на компьютере и репозиторий на GitHub
Если у вас уже имеется локальный репозиторий на вашем компьютере и вы хотите его связать с репозиторием на GitHub, вам потребуется выполнить следующую команду:
git remote add origin
Эта команда добавляет ссылку на удаленный репозиторий с названием `origin`. После выполнения этой команды вы сможете загрузить свой код на GitHub с помощью команды `git push -u origin master`.
4. Как переместить файл в папку на GitHub
Перемещение файлов на GitHub — одно из важных действий при работе с папками. Вы можете легко переместить файлы в новую папку, просто указав путь к новому местоположению файла. Если вы хотите переместить файл вниз по каталогу, то просто укажите название папки и символ `/`. Вы также можете выбрать уже существующую папку или создать совершенно новую — выбор за вами!
Полезные советы и выводы
- Добавление папки на GitHub — простой процесс, но имейте в виду, что Git не может добавить пустую папку, поэтому всегда добавляйте хотя бы один файл внутри папки.
- Используйте файл `.gitkeep` для того, чтобы система Git знала о пустых папках.
- При связывании локального репозитория с удаленным репозиторием на GitHub, не забудьте выполнить команду `git remote add origin `.
- При перемещении файлов в папки на GitHub, не забудьте указать правильный путь к новому местоположению файла.
Теперь вы знаете, как добавить папку на GitHub, создать пустую папку, связать папку на компьютере с репозиторием на GitHub и перемещать файлы в папках на GitHub. Используйте эти знания для удобной и эффективной работы с ваших проектами на GitHub.
Как добавить папку в Гитхаб
Добавление папки в GitHub — очень простая задача. Для этого необходимо запустить GitHub Desktop и перетащить нужную папку в окно программы. Если вам нужно добавить несколько папок одновременно, вы можете перетащить их все сразу. В таком случае каждая папка будет добавлена как отдельный репозиторий Git. После этого вы можете внести изменения в файлы внутри папок, коммитить их и пушить на GitHub. Также можно создать новую папку прямо в GitHub Desktop, нажав на кнопку «Create New Repository» и указав название и путь к папке. Это удобно, когда вы хотите начать новый проект и сразу добавить его в GitHub. Все действия с папками и репозиториями можно производить в удобном интерфейсе GitHub Desktop без необходимости использовать командную строку или веб-интерфейс GitHub.
Как добавить пустую папку в git
Если вы хотите добавить пустую папку в git, столкнетесь с проблемой, поскольку система контроля версий не может зафиксировать пустые каталоги. Для решения этой проблемы необходимо создать файл внутри пустой папки, чтобы git мог записать его в репозиторий. Несмотря на то, что можно использовать любое имя для такого файла, наиболее распространенным соглашением является использование точки. Итак, если вы хотите добавить пустую папку с именем «example», просто создайте файл с именем «.gitkeep» внутри папки «example». Этот файл не имеет никакого содержания, но он позволит git сохранить пустую папку в репозитории. Такое решение является небольшим компромиссом в угоду избежанию создания множества файлов или директорий вручную.
Как добавить файл в другую папку
Чтобы добавить файл в другую папку, можно воспользоваться несколькими способами. Первый способ — это перетаскивание файла с зажатой правой или левой клавишей мыши. Для этого нужно открыть две папки: одну с файлом, который нужно переместить, и другую — папку, в которую нужно переместить файл. Затем, выбрав нужный файл, нужно его перетащить и отпустить в нужной папке.
Еще один способ — это использование пиктограмм на странице модуля «Документы». На странице выбираем нужный файл и используем пиктограмму «Вырезать» или «Скопировать». Затем, переходим в папку, в которую нужно добавить файл, и используем пиктограмму «Вставить», чтобы поместить файл в нужное место.
Оба способа позволяют быстро и легко переместить файл в нужную папку, выбрав наиболее удобный для себя способ.
Как добавить новую папку в Гитхаб
Перейдите на свою страницу в Git-репозитории и выберите репозиторий, к которому вы хотите добавить новую папку. Нажмите на кнопку «Добавить файл». Введите имя новой папки в поле «Имя файла» и добавьте к имени файла /, чтобы указать, что это папка. Затем выберите «Создать новый файл». Введите сообщение коммита, описывающее, что вы добавляете новую папку, и нажмите на кнопку «Сохранить изменения». Git создаст новую папку в вашем репозитории. Если вы хотите загрузить файлы или подпапки в эту папку, нажмите на кнопку «Загрузить файлы» и выберите файлы, которые вы хотите добавить. После загрузки файлов выберите «Создать коммит» и введите соответствующее сообщение коммита. Нажмите на кнопку «Сохранить изменения» и все файлы будут добавлены в новую папку в вашем репозитории.
Для того чтобы добавить папку на GitHub, вам потребуется использовать GitHub Desktop. В этой программе вы сможете перетащить нужную папку с локального компьютера в окно GitHub Desktop. Если вам необходимо добавить несколько папок Git одновременно, то каждая из них будет добавлена в виде отдельного репозитория Git. Это означает, что для каждой папки будет создан отдельный проект на GitHub. Важно отметить, что перед тем как добавить папку на GitHub, вам потребуется сначала создать репозиторий на самом GitHub. Это можно сделать с помощью веб-интерфейса GitHub. После создания репозитория вы сможете добавить нужные папки с локального компьютера и синхронизировать их с GitHub.
How do I create a folder in a GitHub repository?
I want to create a folder in a GitHub repository and want to add files in that folder. How do I achieve this?
![]()
16 Answers 16
TL;DR Use / in the file name field to create folder(s), e.g. typing folder1/file1 in the file name field will create a folder folder1 and a file file1 .
Original answer
You cannot create an empty folder and then add files to that folder, but rather creation of a folder must happen together with adding of at least a single file. This is because git doesn’t track empty folders.
Git и Github. Простые рецепты
При разработке собственного проекта, рано или поздно, приходится задуматься о том, где хранить исходный код и как поддерживать работу с несколькими версиями. В случае работы на компанию, обычно это решается за вас и необходимо только поддерживать принятые правила. Есть несколько общеупотребимых систем контроля версий, и мы рассмотрим одну из самых популярных — это Git и сервис Github.
Система Git появилась, как средство управления исходными текстами в операционной системе Linux и завоевала множество поклонников в среде Open Source.
Сервис Github предоставляет хостинг (хранение) исходных текстов как на платной, так и на бесплатной основе. Это одна из крупнейших систем, которую любят Open Source пользователи. Основное отличие платной версии — это возможность создания частных репозиториев (хранилищ) исходных текстов и если вам скрывать нечего, то можете спокойно пользоваться бесплатной версией.
После того, как вы начали работу над проектом и написали какой-то работающий прототип, у вас появится желание сохранить результаты работы. Это так же может быть полезно в случае, если вы захотите продолжить работу на другом компьютере. Самое простое решение — это сохранить все на флешке. Этот вариант неплохо работает, но если есть подключение к интернету (а сейчас у кого его нет), то удобно воспользоваться системами Git/Github.
В этой статье будут описаны базовые сценарии использования систем Git/Github при работе над проектом в среде Linux с помощью командной строки. Все примеры проверялись на системе с Linux Ubuntu 14.04 и Git 1.9.1. Если вы пользуетесь другим дистрибутивом, то возможны отличия.
Создание локального репозитория
Предположим, что ваш проект находится в папке /home/user/project. Перед тем, как сохранять исходники, можно посмотреть, нет ли временных файлов в папке с проектом и по возможности их удалить.
Для просмотра папки удобно воспользоваться командой tree, которая покажет не только содержимое каждой папки, но и древовидную структуру директорий.
Часто временные файлы содержат специфические суффиксы, по которым их легко обнаружить и в последствии удалить. Для поиска таких файлов можно воспользоваться командой find. В качестве примера посмотрим, как найти все файлы, которые генерируются компилятором Python и имеют расширение .pyc
Переходим в папку с проектом /home/user/project:
И показываем список файлов с расширением .pyc:
Эта команда выведет список всех файлов с расширением .pyc в текущей директории и в ее поддиректориях. Для удаления найденных файлов, достаточно добавить ключ -delete к этой команде:
Очень рекомендуется не спешить и сразу ключ этот не добавлять. Первый раз вызвать команду для просмотра файлов и только убедившись, что в список не попало ничего полезного добавить ключ удаления.
Создадим локальный репозиторий в папке с проектом:
После выполнения этой команды появится новая папка с именем .git. В ней будет несколько файлов и поддиректориев. На данный момент система управления версиями еще не видит наших файлов.
Добавление файлов в локальный репозиторий
Для добавления файлов используется команда:
После выполнения команды, файл readme будет добавлен в систему управления версий (конечно если он уже был то этого в проекте). При добавлении файла генерируется хеш значение, которое выглядит примерно так:
Добавленные файлы хранятся в папке .git/objects/xx/yyyyyyyy, при этом первые 2 цифры хеша ипользуются для указания директории, а остальное хеш значение является именем файла. Наш добавленный файл будет находится здесь:
Что легко увидеть с помощью команды:
Сам файл является архивом, который легко распаковать и вывести на экран, указав полное значение хеша.
Для того, чтобы добавить все файлы из текущей директории введите:
Если нужно добавить файлы из текущей директории и из всех поддиректориев, то используйте:
Для того, чтобы в систему не попадали временные файлы, можно их занести в файл .gitignore, который нужно создать самостоятельно и разместить в корневом каталоге проекта (на том же уровне, что и .git директория).
Например, если в в файл .gitignore добавить следующую строчку *.pyc, то все файлы с расширением .pyc не будут добавляться в репозиторий.
После добавления файлов, все изменения находятся в так называемой staging (или cached) area. Это некоторое временнное хранилище, которое используется для накопления изменений и из которого создаются собственно версии проектов (commit).
Для просмотра текущего состояния можно воспользоваться командой:
После выполнения команды мы увидим, что в stage area находится наш файл:
Если вы продолжите вносить изменения в файл readme, то после вызова команды git status вы увидите две версии файла.
Чтобы добавить новые изменения достаточно повторить команду. Команда git add не только добавляет новые файлы, но и все изменения файлов, которые были добавлены ранее.
Можно отменить добавления файла readme в staging area с помощью команды:
После выполнения команды, файл readme отметится, как неизмененный системой.
Создание версии проекта
После того, как мы добавили нужные файлы в staging area мы можем создать версию проекта. С помощью команды:
Каждая новая версия сопровождается комментарием.
После коммита, мы сможем найти два новых объекта внутри .git репозитория.
Посмотрим, что внутри:
Ключ -t показывает тип объекта. В результате мы видим:
Для второго объекта:
Для самого первого файла:
Если мы будем дальше изучать содержимое этих файлов, то обнаружим древовидную структуру. От каждого коммита можно по ссылкам пройти по всем измененным файлам. Для практического применения это не очень нужно, но возможно так будет легче понять, что происходит при работе с системой Git.
Самую первую версию отменить нельзя. Ее можно только исправить. Если вы хотите добавить изменения в последнюю версию, то после выполнения команды commit, добавляете необходимые изменения и вызываете:
Ключ —no-edit нужен, чтобы не вводить заново комментарий.
Можно просмотреть изменения, которые вы внесли последним коммитом:
Ключ —name-only нужен, чтобы показывать только имена измененный файлов. Без него по каждому измененнному файлу будет выдан список всех изменений.
Если вы продолжили работать и изменили только те файлы, которые были уже добавлены в систему командой git add, вы можете сделать коммит одной командой:
Для просмотра списка всех коммитов, воспользуйтесь командой:
Ключ —oneline нужен, чтобы уменьшить количество информации выдаваемой на экран. С этим ключем каждый коммит показывается в одну строчку. Например:
Для того, чтобы просмотреть изменения по конкретному коммиту, достаточно в команду git show добавить хеш значение коммита, которое можно получить с помощью предыдущей команды.
Для отмены последнего коммита (кроме самого первого) можно воспользоваться следующей командой:
Для того чтобы удалить все файлы в папке, которые не относятся к проекту и не сохранены в репозитории, можно воспользоваться командой:
Создание репозитория на Github
До текущего момента мы работали с локальным репозиторием, который сохранялся в папке на компьютере. Если мы хотим иметь возможность сохранения проекта в интернете, создадим репозиторий на Github. Для начала нужно зарегистрироваться на сайте github.com под именем myuser (в вашем случае это может быть любое другое имя).
После регистрации нажимаем кнопочку «+» и вводим название репозитория. Выбираем тип Public (репозиторий всегда Public для бесплатной версии) и нажимаем Create.
В результате мы создали репозиторий на сайте Github. На экране мы увидим инструкцию, как соединить наш локальный репозиторий со вновь созданным. Часть команд нам уже знакома.
Добавляем удаленный репозиторий (по протоколу SSH) под именем origin (вместо origin можно использовать любое другое имя).
Можем просмотреть результат добавления с помощью команды:
Если все было правильно сделано, то увидим:
Для того, чтобы отменить регистрацию удаленного репозитария введите:
Это может понадобиться, если вы захотите поменять SSH доступ на HTTPS. После этого можно добавить его опять, например под именем github и протоколом HTTPS.
Следующей командой вы занесете все изменения, которые были сделаны в локальном репозитории на Github.
Ключ -u используется для того, чтобы установить связь между удаленным репозиторием github и вашей веткой master. Все дальнейшие изменения вы можете переносить на удаленный репозиторий упрощенной командой.
Перенос репозитория на другой компьютер
После того, как репозиторий был создан на Github, его можно скопировать на любой другой компьютер. Для этого применяется команда:
Результатом выполнения этой команды будет создание папки project в текущем каталоге. Эта папка также будет содержать локальный репозиторий (то есть папку .git).
Так же можно добавить название папки, в которой вы хотите разместить локальный репозиторий.
Работа с одним репозиторием с разных компьютеров
С одним репозиторием с разных компьютеров может работать несколько разработчиков или вы сами, если например работаете над одним и тем же проектом дома и на работе.
Для получения обновлений с удаленного репозитория воспользуйтесь командой:
Если вы изменили ваши локальные файлы, то команда git pull выдаст ошибку. Если вы уверены, что хотите перезаписать локальные файлы, файлами из удаленного репозитория то выполните команды:
Вместо github подставьте название вашего удаленного репозитория, которое вы зарегистрировали командой git push -u.
Как мы уже знаем, для того чтобы изменения выложить на удаленный репозиторий используется команда:
В случае, если в удаленном репозитории лежат файлы с версией более новой, чем у вас в локальном, то команда git push выдаст ошибку. Если вы уверены, что хотите перезаписать файлы в удаленном репозитории несмотря на конфликт версий, то воспользуйтесь командой:
Иногда возникает необходимость отложить ваши текущие изменения и поработать над файлами, которые находятся в удаленном репозитории. Для этого отложите текущие изменения командой:
После выполнения этой команды ваша локальная директория будет содержать файлы такие же, как и при последнем коммите. Вы можете загрузить новые файлы из удаленного репозитория командой git pull и после этого вернуть ваши изменения которые вы отложили командой: