Как загрузить много файлов на гитхаб

Обновлено: 01.07.2024

После проверки « Загрузить мой проект в github» я до сих пор не знаю, как загрузить проект в мой репозиторий Git Hub.

Я новичок в GitHub и понятия не имею, что делать. Я создал репозиторий, но хочу загрузить в него свой проект.

Я поискал на странице репозитория какую-то кнопку загрузки, но ничего подобного не видел.

Я просмотрел предоставленные ссылки, но все еще не понимаю. Они упоминают командную строку, это командная строка Windows или Git Bash? Потому что я тоже ничего не могу сделать.

Я также пробовал использовать графический интерфейс Git, но когда я выбираю нужную папку, в ней говорится, что это не репозиторий Git . нужно ли его заархивировать? Я пробовал добавить .gitconfig файл в папку, но это не имеет значения.

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

Вы также можете использовать sourcetree для установки как git, так и mercurial в Windows.

Вот как это сделать в Windows:

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

* Примечание: your-repo-name должен быть создан в GitHub перед тем, как вы сделаете это. git remote add origin . Как только вы это сделаете, git теперь знает о вашем удаленном репозитории. Затем вы можете сказать ему, чтобы он отправлял (то есть "загружал") ваши зафиксированные файлы:

git push -u origin master

Я следил за этим в командной строке Windows, и он сказал, что git в основном не распознается. Но я следил за ним в Git Bash, и он дошел до конца, и после запроса моего имени пользователя и пароля он сказал ошибку: src ref spec master не соответствует ни одному. ошибка: не удалось После небольшого исследования я понял это. Если я использую git pull origin master перед нажатием, он работает отлично . спасибо :) @Tomer, я полагаю, вы могли бы использовать одного из тех провайдеров "ide в облаке", но было бы намного проще использовать портативную версию git (для Windows), которая не требует установки.

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

Выполните следующие действия для проецирования на Github

1) git init

2) git add .

3) git commit -m "Add all my files"

Требуется загрузка проекта с нуля git pull origin master .

5) git pull origin master

6) git push origin master

Проблема с github в том, что вам нужно проделать этот странный шаг. Бонусные баллы в ответе, если вы замените изображение текстом для копирования / вставки.

если у вас проблемы с загрузкой!

Авторизовался только для того, чтобы проголосовать за этот замечательный ответ! Все , что я отсутствовал на Рождество --force

Здесь я объясняю, как я это сделал в Window, может быть, это также помогает другим :)

Обязательно установите Git и GitHub .

После завершения установки откройте «git bash»;

введите описание изображения здесь

так что появится окно, как показано ниже:

введите описание изображения здесь

Идите вперед и введите, cd

чтобы убедиться, что вы находитесь в домашнем каталоге;

Вы можете проверить адрес, который вы в нем, набрав pwd ;

Теперь вам нужно создать учетную запись GitHub ;

После создания учетной записи GitHub войдите в систему;

После того, как вы вошли в систему, в правом верхнем углу нажмите на + и выберите «Новый репозиторий».

введите описание изображения здесь

Затем в открывшемся окне введите имя, которое вы хотите иметь для репозитория, в поле «Имя репозитория». Добавьте «Описание (необязательно)», если хотите, и отметьте «Инициализировать этот репозиторий с помощью README». Затем нажмите «Создать репозиторий».

введите описание изображения здесь

Теперь перейдите к вашему драйверу C; создайте новую папку и назовите ее «git». Теперь перейдите в окно «git bash»; измените каталог на диск c, набрав cd

; cd /c Если вы введете ls там, он покажет вам папки там; Убедитесь, что там отображается папка git:

введите описание изображения здесь

Теперь вернитесь в браузер; перейдите на свою страницу GitHub, щелкните созданный репозиторий; и нажмите «Клонировать или скачать»; и скопируйте адрес, который там отображается (выбрав копировать в буфер обмена)

введите описание изображения здесь

Теперь вернемся к «git bash»; Используйте команду, cd git чтобы перейти в папку git; теперь напишите следующие команды для подключения к вашему GitHub (введите имя пользователя и пароль своего GitHub, когда он вас спросит)

Теперь, если вы выполните ls команду, вы увидите там свой репозиторий; Если вы также откроете папку git, которая у вас есть в вашем окне, вы увидите, что ваш репозиторий добавлен как папка.

Теперь используйте команду cd, чтобы перейти в репозиторий: cd Test

Скопируйте и вставьте все файлы, которые вы хотите поместить в этот репозиторий, в эту папку.

Чтобы перенести файлы в репозиторий, вам необходимо сделать следующее:

add filename (имя файла - это имя файла, который вы хотите загрузить), или вы можете ввести команду ниже, если вы хотите добавить все файлы в папку:

Затем введите: git commit -m "adding files" . И потом: git push -u origin master .

И тогда все должно быть готово, если вы обновите свою учетную запись GitHub, файлы должны быть там :)

Выполните эти два шага:

Выполните следующие действия, чтобы загрузить свой проект в Github.

3) git commit -m "Add all my files"

Для загрузки проекта с нуля требуется мастер git pull origin.

5) git pull origin master

6) git push origin master

Если возникнут какие-либо проблемы при нажатии, используйте git push --force origin master

git push --force origin master решил мою проблему! Благодарность!

Это сработало для меня;

Особенно важно, чтобы пользователи окон сначала загрузили git. Я усвоил это на собственном горьком опыте. Пользователям Mac очень повезло. @ Alchemist21 Но самый трудный путь даст вам лучший пункт назначения;)

введите описание изображения здесь

  1. В верхней части страницы быстрой настройки репозитория GitHub щелкните, чтобы скопировать URL-адрес удаленного репозитория. Вверху страницы быстрой настройки репозитория GitHub щелкните, чтобы скопировать URL-адрес удаленного репозитория.
  2. В командной строке добавьте URL-адрес удаленного репозитория, куда будет помещен ваш локальный репозиторий.
в этом случае лучше использовать c / p, чем просто сказать «ответ здесь». ПО МОЕМУ МНЕНИЮ. IMHO, c / p в порядке, но требуется источник, так как он может устареть.

Я предполагаю, что вы работаете в системе Windows, как я, и у вас установлен GIT. Вы можете запустить эти команды из простой командной строки в каталоге проекта или использовать GitBash.

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

Шаг 2: Зайдите в локальный каталог проекта. Если вы хотите опубликовать свой код в этом новом репозитории, который вы только что создали, убедитесь, что в корневом каталоге проектов нет папки с именем .git, если она есть, удалите ее. Команда выполнения git init

Шаг 3: Запустите команду git add .

Шаг 4: Выполнить команду git commit -m YourCommitName

Шаг 6: Выполнить команду git push --set-upstream YourRepositoryName master --force

Надеюсь, мой ответ помог.

  1. Откройте Git Bash.
  2. Измените текущий рабочий каталог на свой локальный проект.
  3. Инициализируйте локальный каталог как репозиторий Git: $ git init
  4. Добавьте файлы в новый локальный репозиторий. Это настраивает их для первой фиксации: $ git add .
  5. Зафиксируйте файлы, которые вы разместили в своем локальном репозитории: $ git commit -m "First commit"
  6. Вверху страницы быстрой настройки репозитория GitHub щелкните, чтобы скопировать URL-адрес удаленного репозитория.
  7. В командной строке добавьте URL-адрес удаленного репозитория, куда будет помещен ваш локальный репозиторий: $ git remote add origin remote repository URL
  8. Отправьте изменения в локальном репозитории на GitHub: $ git push origin master
@Kateract Ты вдохновил меня быть добрее к новым людям. Я буду использовать ваш пост в качестве ориентира.

Я думаю, что вам проще всего было бы установить плагин git для eclipse, который работает более или менее так же, как плагины eclipse CVS и SVN:

  1. Сначала вам нужно создать учетную запись на Github
  2. Затем создайте новый проект - назовите этот проект по своему усмотрению, тогда отобразится URL-адрес вашего проекта.
  3. Теперь скопируйте URL
  4. Затем откройте командную строку и перейдите в каталог или папку, которую вы хотите загрузить с помощью cmd.

Затем введите следующие команды

Теперь проверьте свою учетную запись GitHub, репозиторий успешно загружен.

Чтобы получить полное руководство, вы можете посмотреть это видео .

Загрузите SourceTree. Он доступен для Windows 7 + и Mac и настоятельно рекомендуется загружать файлы на github через интерактивный интерфейс.

После попытки подтолкнуть ошибки были примерно такими:

Я чувствую себя идиотом, но мне очень хотелось бы это подчеркнуть. Я просто подумал, что мое репо будет создано автоматически при первом нажатии. Я был так неправ.

Убедитесь, что в вашей системе установлен git . Я объясняю процесс с помощью ОС Windows

Вот как я это сделал:

1. Откройте cmd (вы также можете сделать это с помощью git bash).

2. Перейдите в каталог вашего проекта (где находится ваш проект).

3.Теперь введите your_directory >git init это инициализирует пустой репозиторий, если это первый раз, и введите. например: C:\Users>git init

4.Теперь введите your_directory >git add <filename> (для определенных файлов) или git add . (если вы хотите добавить все файлы) и введите.

5.Теперь введите >git commit -m "commit message goes here" и войдите.

(в случае, если вам нужно проверить статус, вы можете сделать это, набрав >git status ) и войдите.

6.Теперь введите >git remote add origin git_repository_url

(проверьте >git remote -v ) и войдите.

7. Теперь поверните, чтобы нажать . >git push origin master и войти.

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

Надеюсь, это сработает для вас.

Следуйте инструкциям от RishiKesh Pathak выше, вы даже можете сократить команду push, вставив эту командную строку только один раз:

Так что в следующий раз вместо использования git push origin master вам просто нужно:

Лучший способ использовать git - это запустить Gitting . Попробуйте этот веб-сайт, на котором вы шаг за шагом узнаете, каковы основные способы выполнения функций в командной строке для продвижения проекта на GitHub.

Это называется try.github.io, или вы также можете пройти курс codeAcademy.

Хотя эта ссылка может дать ответ на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. Ответы, содержащие только ссылки, могут стать недействительными, если ссылка на страницу изменится. - Из @VinothKrishnan Согласен, позаботимся об этом в следующий раз

Я сделал следующее;

Конечно, вам нужно установить git

Шаги по загрузке проекта в git: -

step1-open cmd и измените текущий рабочий каталог на местоположение вашего проекта.

step2-Инициализируйте каталог вашего проекта как репозиторий Git.

step3-Добавьте файлы в ваш локальный репозиторий.

step4-Зафиксируйте файлы, которые вы разместили в локальном репозитории.

step5-Скопируйте URL-адрес удаленного репозитория.

Шаг 6 - добавьте URL-адрес удаленного репозитория в качестве источника в вашем локальном местоположении.

$ git add origin copied_remote_repository_url

Шаг 7 - подтвердите, что ваше происхождение обновлено, а не нет.

$ git удаленное показать происхождение

  1. Нам нужен Git Bash
  2. В разделе команд Git Bash:

Он покажет вам местоположение по умолчанию.

1.2 CD "C: \ Users \ user \ Desktop \ HTML" Нам нужно указать путь к проекту

1.3 git init Он инициализирует пустой репозиторий git в C: \ Users \ user \ Desktop \ HTML

1.4 ls Он перечислит все имена файлов

1.6 git remote -v Чтобы проверить погоду, у нас есть разрешение на выборку или отправку

1.7 git add. Если поставить. тогда это означает, что все, что у нас есть в perticular папке, публикует все.

1.8 git commit -m "Первый раз"

1.9 git push -u origin master

Что вам нужно, это SSH-соединение и инициализация GitHub в ваш проект. Я объясню под машиной Linux.

Начнем с простых вещей: войдите в свой проект в терминале и используйте:

для загрузки нового проекта в GIT (сначала вам нужно иметь локальную базу кода проекта и репозиторий GIT, куда вы будете загружать проект, в GIT вам необходимо иметь свои учетные данные)

1. открыть Git Bash

2. перейдите в каталог, где у вас есть база кода (расположение проекта) cd в расположение проекта cd / * / *** / ***** / ***** Затем здесь вам нужно выполнить команды git

    git init нажмите Enter, тогда вы увидите что-то вроде этого ниже Инициализированный пустой репозиторий Git в *: / *** / **** / ***** /. git /, поэтому git init инициализирует пустой репозиторий GIT на локальном

git add. нажмите Enter, указанная выше команда добавит весь каталог, подкаталог, файлы и т.д., вы увидите что-то вроде этого предупреждения: LF будет заменен на CRLF в ****. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в ********. У файла будут исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в *******. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в ********. У файла будут исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в *******. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в **************. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в ************. У файла будут исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в *************** Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в j *******. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в ***********. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в **************. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в ***********. У файла будут исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в *********.

git commit -m "первая фиксация" нажмите ввод -m предоставленная опция для добавления комментария, он зафиксирует код на этапе env, вы увидите что-то вроде этого

[master (root-commit) 34a28f6] добавление ******** предупреждение: LF будет заменен на CRLF в c *******. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в *******. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в ********. Файл будет иметь исходные окончания строки в вашем рабочем каталоге. предупреждение: LF будет заменен на CRLF в *********. Файл будет иметь исходные окончания строки в вашем рабочем каталоге.

предупреждение: LF будет заменен на CRLF в ***********.

27 файлов изменено, 3724 вставки (+) режим создания 100644 ***** режим создания 100644 ***** режим создания 100644 ***** режим создания 100644 ****** режим создания 100644 ***** * режим создания 100644 ***** режим создания 100644 ******

Загрузка больших файлов размером более 100 МБ на Github

Обычно после фиксации, когда мы нажимаем на Github, размер одного файла не превышает 100 МБ, поэтому такая ситуация практически не встречается.
Однако вы всегда будете сталкиваться, когда размер одного файла превышает 100 МБ, при нажатии появляется следующая ошибка:

  • Установите git-lfs на этот компьютер
    Здесь нет никаких сложностей, просто установите согласно официальному сайту.

После этого порядок отправки больших файлов, следующий порядок официального сайта:

  1. Установите расширение командной строки Git. Вам нужно только один раз настроить Git LFS.
    В каталоге проекта выполните следующую команду:
  1. Выберите типы файлов, которыми Git LFS будет управлять (или напрямую отредактируйте .gitattributes). Вы можете настроить другие расширения файлов в любое время. После успешного выполнения этого шага будет создан файл gitattributes.

git lfs track "* .a" - здесь "* .a" - это путь к большому файлу, который вы хотите загрузить

  1. Затем добавьте большие файлы в локальный кеш

Выше, согласно описанному выше методу, первая загрузка большого файла по-прежнему будет сообщать об ошибке, и это озадачено


Нима, новички всегда мочеиспускают. .

Как показано ниже:

img_f2b62d037c924ce215fcb86521a2bb12.jpg

Если возникает указанная выше проблема, сначала выполните сброс до предыдущей фиксации, которую вы только что зафиксировали (то есть отменить предыдущую фиксацию, вернуться к начальной точке и повторить попытку).

Первый и второй шаги такие же, как и выше. На третьем шаге сначала зафиксируйте файл .gitattributes отдельно, затем нажмите и после завершения перейдите к четвертой части (выполните после четвертой части добавьте git lfs ls-files Вы должны уметь видеть вещи).
Здесь не должно быть проблем.

это будет мое первое использование git. Я добавил новые файлы ( много ) в папку/проект ( локальный репозиторий git).

Я прошел через онлайн-уроки и форумы и вижу, что могу сделать

поэтому я иду в базовую папку репозитория и делаю

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

не могли бы вы, ребята, изложить команды, которые мне нужно использовать?

чтобы добавить все внесенные вами изменения:

вы можете объединить эти шаги следующим образом:

git commit -a -m "MY MESSAGE HERE"

чтобы переместить внесенные изменения из локального репозитория в удаленный репозиторий:

git push origin master

возможно, вам придется ввести свое имя пользователя/пароль для github после этого. вот!--22--> хороший праймер по использованию git. Немного старомодно, но это хорошо покрывает то, что происходит.

использовать git add команда, за которой следует список имен файлов, разделенных пробелом, например

вы также можете выбрать несколько файлов, как это

добавить все файлы в указанной папке. Очень полезно, когда вы редактировать кучу файлов, но вы просто хотите зафиксировать некоторые из них.

как некоторые упоминали, возможный способ использует интерактивная постановка git. Это здорово, когда у вас есть файлы с разными расширениями

если вы нажмете 2 затем enter вы получите список доступных файлов, которые будут добавлены:

теперь вам просто нужно вставить количество файлов, которые вы хотите добавить, поэтому, если мы хотим добавить TODO и index.html мы типа 1,2

видишь * до номера? это означает, что файл был добавлен.

теперь представьте, что у вас есть 7 файлов и вы хотите добавить их все, кроме 7-го? Конечно, мы могли бы напечатать 1,2,3,4,5,6 но представьте, что вместо 7 у нас есть 16, что было бы довольно громоздко, хорошо, что нам не нужно вводить их все, потому что мы можем использовать диапазоны,набрав 1-6

мы даже можем использовать несколько диапазонов, поэтому, если мы хотим от 1 до 3 и от 5 до 7, мы вводим 1-3, 5-7 :

мы можно также использовать это для unstage файлов, если мы вводим -number , поэтому, если бы мы хотели unstage файл номер 1 мы бы ввести -1 :

и, как вы можете себе представить, мы также можем unstage ряд файлов, так что если мы наберем -range все файлы в этом диапазоне будут не загружены. Если бы мы хотели распаковать все файлы от 5 до 7, мы бы набрали -5-7 :

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

остерегайтесь не ставить пробелы между , .

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

или если вы хотите поставить все

делая это, вы говорите git, какие файлы вы хотите в своем следующем коммите. Вы тут:

где origin - это ветвь удаленного репозитория, а master-ваша локальная ветвь репозитория.

использовать git commit -a -m "my first commit message" , чтобы указать комментарий к коммиту в командной строке (с помощью этого не запустится редактор)

установить EDITOR переменная окружения для редактора, с которым вы знакомы

Если вы хотите, чтобы этап и зафиксировать все ваши файлы на Github сделать следующее;

git add -A
git commit -m "commit message"
git push origin master

Git отлично подходит для хранения исходного кода, поскольку различия между версиями легко выбирались, а код легко сжимается. Большие файлы, которые плохо сжимаются и полностью меняются между версиями (например, двоичными файлами), представляют проблемы при хранении в репозиториеве Git. Высокая производительность Git заключается в возможности адресации и переключения на все версии файла из локального хранилища.

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

Какие типы файлов следует хранить в Git?

Исходный код — не зависимости

По мере того как ваша команда работает с редакторами и инструментами для создания и обновления файлов, следует разместить эти файлы в Git, чтобы ваша команда могла использовать преимущества рабочего процесса Git. Не зафиксируйте другие типы файлов, например библиотеки DLL, файлы библиотек и другие зависимости, которые не создаются командой, но код зависит от вашего репозитория. Доставьте эти файлы через Управление пакетами в свои системы.

Управление пакетами объединяет зависимости и устанавливает файлы в систему при развертывании пакета. Версии пакетов позволяют убедиться, что код, протестированный в одной среде, работает в другой среде в том случае, если они имеют одинаковые установленные пакеты.

Не фиксировать выходные данные

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

Хранение небольших, нечасто обновляемых двоичных источников в Git

Файлы исходного кода, которые обновляются редко, будут зафиксированы относительно небольшое число версий и не занимают много пространства, если их размер файла мал. Изображения для веб-страниц, значков и других мелких графических ресурсов могут попадать в эту категорию. Лучше сохранить эти файлы в Git с остальной частью источника, чтобы ваша команда могла использовать последовательный рабочий процесс.

Даже небольшие двоичные файлы могут вызвать проблемы при частом обновлении. 100. изменения в двоичном файле 100 КБ приведут к тому же объему хранилища, что и 10 изменений в 1 МБ, и из-за частоты обновления меньшего двоичного файла снижается производительность ветвления чаще, чем в большом двоичном файле.

Не зафиксируйте большие, часто обновляемые двоичные ресурсы

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

Стратегии работы с большими двоичными файлами с исходным кодом

  • Не зафиксируйте сжатые архивы данных. Лучше распаковать файлы и зафиксировать источники, которые могут быть различны, позволяя службе Git сжимать данные в репозитории.
  • Избегайте фиксации скомпилированного кода и других двоичных зависимостей. Зафиксируйте источник и создайте зависимости или используйте решение по управлению пакетами для версии и предоставьте эти файлы в систему.
  • Хранение конфигурации и других структурированных данных в форматах с открытым текстом в формате простого текста, таких как JSON.

использование служба хранилища больших файлов Git (LFS)

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

Преимущества

Преимущество Git LFS заключается в том, что ваша команда может использовать знакомый комплексный рабочий процесс Git независимо от того, какие файлы создает ваша команда. Файлы LFS могут быть достаточно большими. Кроме того, начиная с версии 2,0, Git LFS поддерживает блокировку файлов , чтобы помочь вашей команде работать с большими, непохожими ресурсами, такими как видео, звуки и карты игр.

LFS Git полностью поддерживается и предоставляется бесплатно в Azure DevOps Services. чтобы использовать LFS с Visual Studio, требуется по крайней мере Visual Studio 2015 с обновлением 2. Просто следуйте инструкциям по установке клиента, настройке отслеживания LFS для файлов в локальном репозитории и последующей отправке изменений в Azure Repos.

Ограничения

В Git LFS есть некоторые недостатки, которые следует учесть перед внедрением:

  1. Каждый клиент Git, используемый вашей командой, должен установить клиент Git LFS и понять его конфигурацию отслеживания.
  2. Если клиент LFS Git не установлен и не настроен должным образом, двоичные файлы, зафиксированные с помощью Git LFS, не будут отображаться при клонировании репозитория. Git загрузит данные, описывающие большой файл (в котором LFS Git фиксируется в репозитории), а не сам двоичный файл. При фиксации больших двоичных файлов без установленного клиента Git LFS отправляет двоичный файл в репозиторий.
  3. Git не может объединить изменения из двух разных версий двоичного файла, даже если обе версии имеют общий родительский объект. Если два человека одновременно работают над одним и тем же файлом, они должны работать вместе, чтобы согласовать их изменения, чтобы избежать перезаписи других работ. Git LFS обеспечивает блокировку файлов для помощи. Пользователи по-прежнему должны всегда получать последнюю копию двоичного ресурса перед началом работы.
  4. Azure Repos в настоящее время не поддерживает использование SSH в репозиториев с отслеживанием файлов LFS Git.
  5. Если пользователь перетаскивает и удаляет двоичный файл через веб-интерфейс в репозиторий, настроенный для LFS Git, двоичный объект будет зафиксирован в репозитории, а не в указателях, которые будут зафиксированы через клиент Git LFS.
  6. Максимальный размер файла составляет 50 ГБ.
  7. Ограничение по времени для отправки одного файла составляет 1 час.

Формат файла

Файл, записанный в репозиторий для файла с отслеживанием Git LFS, будет содержать несколько строк с парой "ключ — значение" в каждой строке:

URL-адрес GitHub, включенный в значение version, определяет только тип файла указателя LFS и не является ссылкой на двоичный файл.

Известные проблемы

если вы используете версию LFS ниже 2.4.0 с Azure DevOps Server или TFS, то для проверки подлинности с использованием NTLM вместо Kerberosтребуется дополнительный шаг настройки. Этот шаг больше не требуется для LFS 2.4.0, и мы настоятельно рекомендуем выполнить обновление.

По стандартным примерам самого GitHub'a получилось создать файл README.md .

Как в этом же репозитории, там же где и README.md создать еще один файл/папку? Я создал файл в этом репозитории ( test ) напр. style.css у себя на машине, выполнил команду git add style.css , но файл не добавился удаленно.

Как это свести воедино? Что сделать, чтобы мой style.css появился в репозитории test на GitHub?

23k 3 3 золотых знака 46 46 серебряных знаков 69 69 бронзовых знаков 2,641 14 14 золотых знаков 50 50 серебряных знаков 85 85 бронзовых знаков Предположим что лень. Интересен чисто теоретико-практический вопрос) Да, и ещё, на битбакэте есть аналог gh-pages, и как там дело с загрузкой?

Вообще, начиная работать с какой-либо системой контроля версий, имеет смысл прочитать Quick Start Guide для ознакомления в целом и для того, чтобы узнать об основных функциях.

Для случая git можно начать с Git Howto и дальше уже пробежаться по референсам.

git commands


27.2k 10 10 золотых знаков 47 47 серебряных знаков 108 108 бронзовых знаков 23.3k 1 1 золотой знак 35 35 серебряных знаков 55 55 бронзовых знаков

Текстовые файлы можно создавать через + рядом с именем текущей папки.

Бинарные закачивать нельзя (по крайней мере в текущей версии интерфейса).

UP: Github теперь поддерживает загрузку любых файлов напрямую через интерфейс.

47k 11 11 золотых знаков 74 74 серебряных знака 143 143 бронзовых знака про текстовые понятно. интересовало именно загрузка картинок без установки доп. утилит.

Буквально на днях в Github появилась возможность загрузки (не создания) файлов через веб-интерфейс. При заходе на свой репозиторий всё сразу будет видно: нужно перенести файлы в область большого прямоугольника, где написано «File uploading is now available» (или лишний раз нажать «Upload files» и перенести).

В первые дни после введения веб-загрузки имена изображений менялись на default.jpg (default.jpg, default.jpg), но сейчас вроде бы с багом покончено: имена, заданные пользователем, остаются.

После внесения изменений в вебе не забывайте переносить их из репозитория на компьютер командой git pull . Спасибо.

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