А АMonday, 2 March 2026

Твій Git як класичний FTP.


Привіт.

Раптом я хочу закинути свої дорогоцінні файли на GitHub в існуючий репозиторій. Але мені не треба щоб все що там вже є прибігло назад на мій ПК, мені треба тільки ДОДАТИ(ЗАМІНИТИ) в репозиторії. Можливо?

Тобто Ви хочете використовувати Git як FTP: "ось тобі нові файли, поклади їх до купи, а старе мені не показуй". Але тут є нюанс: Git - це система синхронізації. Він працює за логікою: "Що є у тебе в папці = те має бути на сервері". Якщо ви створите нову папку з новими файлами, але без старих, і спробуєте силою залити це в основну гілку (main), Git подумає: "Ага, користувач видалив старі файли і залишив тільки ці нові". І він видалить все старе на сервері.

Щоб не завантажувати гігабайти старого коду назад на ПК, але безпечно додати нове, є два шляхи:

Варіант 1. Найпростіший (через веб-браузер)

Якщо це разова акція і там всього десяток папок, це найшвидший варіант, який працює як FTP.

Відкрийте ваш репозиторій на GitHub.

Натисніть Add file → Upload files.

Відкрийте провідник на комп'ютері і просто перетягніть усю папку з новими файлами прямо у вікно браузера. Зачекайте завантаження і натисніть зелену кнопку Commit changes.

Це збереже і старі файли, і додасть нові, і нічого не качатиме вам на ПК.

Якщо файлів небагато то це саме воно! А якщо їх назбиралася ціла купа - не наклікаєшся!))


Варіант 2. Хірургічний (через "бічну" гілку)

Якщо ви принципово хочете через термінал, треба схитрувати. Ми створимо "паралельну реальність" (нову гілку) тільки з новими файлами, закинемо її на сервер, а там їх "зліпимо" докупи.

Моя інструкція:

Створіть папку, покладіть туди тільки нові файли.

Відкрийте там термінал і виконайте цей код:

Bash

# Ініціалізуємо новий git тут

git init

# Додаємо нові файли

git add .

git commit -m "Adding new files only"

# Підключаємося до вашого репозиторію

git remote add origin https://github.com/nyukers/OLDREPO.git

# УВАГА: далі ми пушимо не в main, а в нову гілку 'new-files'

git push origin HEAD:new-files

Що робимо далі:

Команда виконається швидко, бо завантажить тільки нове.

Зайдіть на сторінку репозиторію на GitHub.

Ви побачите жовту плашку: "new-files had recent pushes". 

Натисніть кнопку Compare & pull request.

Натисніть Create pull request, а потім Merge pull request (і Confirm merge).

Результат: GitHub сам на сервері об'єднає ваші старі файли з новими. Ви нічого старого на комп'ютер не завантажували.


Але раптом ви запули файли не туди. Терміново треба поправити їх місце розташуання.  Чи можно папку в межах одного репозитрою перенести в іншу папку?

Так, можна. І враховуючи, що ви не хочете завантажувати файли собі на комп'ютер, у GitHub є "секретна" функція саме для таких задач. Це повноцінний редактор коду прямо в браузері.

Ось як це зробити найзручніше:

Спосіб "Супер-швидкий" (через клавішу крапка)

Відкрийте свій репозиторій на GitHub (https://github.com/nyukers/OLDREPO).

Просто натисніть клавішу . (крапка) на клавіатурі.

Ваууу, магія - ваш браузер завантажить інтерфейс, схожий на VS Code.


Зліва ви побачите дерево ваших файлів.

Просто перетягніть мишкою потрібну папку всередину іншої папки (як у звичайному Провіднику Windows).

Тепер треба зберегти зміни:

Зліва на панелі збоку знайдіть іконку Source Control (виглядає як розгалуження ліній або "дерево" з кружечками, зазвичай третя зверху).

В поле "Message" введіть щось типу "Moved folder".

Все! Нічого качати не треба.

УВАГА - тут може бути класична пастка для новачка!

В цьому веб-редакторі (як і в справжньому VS Code) зміни не зберігаються автоматично (як у Google Doc). Ви їх просто "підготували", але не "відправили".

Треба повернутися і натиснути кнопку "Зберегти" (Commit).

Ось що треба зробити:

Знову натисніть крапку . на сторінці репозиторію (щоб повернутися в редактор).

Скоріш за все, ви побачите, що ваші папки стоять так, як ви їх перемістили (браузер це запам'ятав).

Подивіться на ліву вертикальну панель. Там є іконка Source Control (виглядає як гілочка з кружечками або літера "Y"). На ній має горіти синій кружечок з цифрою (кількість змін). Натисніть на ту іконку.

З'явиться панелька. Зверху буде поле для тексту "Message". Напишіть туди що-небудь (наприклад: move folder).

Натисніть галочку ✔️ (Commit & Push) зверху над цим полем (або кнопку "Commit & Push" синього кольору).

Тільки після цього, коли кружечок з цифрою зникне, можна повертатися назад у звичайний GitHub - і там вже все буде змінено.

Ок, то ж на сьогодні все.

No comments:

Post a Comment

А что вы думаете по этому поводу?

Версия на печать

Популярное