Привіт.
Раптом я хочу закинути свої дорогоцінні файли на 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
А что вы думаете по этому поводу?