Git: различия между версиями
imported>Vix (Новая страница: « '''ИСТОЧНИКИ:''' <hr> * [https://gist.github.com/mcxiaoke/055af99e86f8e8d3176e nginx-gitweb] * [https://habrahabr.ru/sandbox/79375/ Веб интерф…») |
imported>Vix |
||
(не показаны 32 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
==GIT== | |||
'''* Команды git:''' | |||
Создание нового репозитария: | |||
touch README.md | |||
git init | |||
git add . | |||
git commit -m "first commit" | |||
git remote add origin http://gitserver.org/dev_user/testrep.git | |||
git push -u origin dev_user | |||
* Как обнулить историю Git? | |||
<hr> | |||
git reset --hard commitId #УДАЛЯЕТ ИСТОРИЮ GIT | |||
или | |||
* [https://ru.stackoverflow.com/questions/229431/%D0%9A%D0%B0%D0%BA-%D0%BE%D0%B1%D0%BD%D1%83%D0%BB%D0%B8%D1%82%D1%8C-%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8E-git взято тут...] | |||
Все эти инструкции верны, если на удаленном сервере у вас пусто, а локально - есть проект и репозиторий Git с историей, которую вы хотите удалить. | |||
Что будет потеряно безвозвратно | |||
Собственно, история. Вы точно хотите ее потерять? Ради нее весь Git и придумывался. | |||
Весь код в не-слитых (unmerged) ветках. | |||
Весь код в orphaned ветках. | |||
Быстрый способ | |||
Найдите первый коммит в ветке, запомните его sha1. | |||
git log --oneline | |||
Переключитесь на тот коммит, который хотите сохранить в итоге. | |||
git checkout master | |||
Теперь используем git reset --soft чтобы сделать из всей истории один коммит (подробнее - пункт 4.1: Как вернуться (откатиться) к более раннему коммиту? ). | |||
git reset --soft <first-commit-sha1> | |||
git commit -m'слил историю в один коммит' | |||
Долгий способ | |||
Сделайте бэкап локального репозитория. Можно запушить на резервный удаленный репозиторий, а можно просто взять и переместить папку .git в другое место. | |||
mkdir ../git-backup | |||
mv .git ../git-backup/.git | |||
Если не переместили локально, а забэкапили куда-то еще: удаляем папку. | |||
rm -Rf .git | |||
Теперь заново инициализируем репозиторий: | |||
git init | |||
Добавляем все файлы в рабочей области и делаем коммит. | |||
git add . | |||
git commit -m'начал с нуля' | |||
Когда все готово | |||
Подключаем удаленный репозиторий и заливаем на него изменения: | |||
git remote add origin <url> | |||
git push -u origin --all | |||
* Если возникает ошибка: "Peer's Certificate issuer is not recognized" | |||
используйте параметр: git -c http.sslVerify=false clone ... | |||
==[[GOGS]]== | |||
<br> | |||
==[[Git-Ifs]]== | |||
<br> | |||
==ПОЛЕЗНОЕ== | |||
* [https://eax.me/git-commands/ Моя шпаргалка по работе с Git] | |||
* [https://git-scm.com/book/ru/v2/%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B-Git-%D0%97%D0%B0%D0%BF%D0%B8%D1%81%D1%8C-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B9-%D0%B2-%D1%80%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B9 Основы Git - Запись изменений в репозиторий] | |||
* [https://ru.stackoverflow.com/questions/431520/%D0%9A%D0%B0%D0%BA-%D0%B2%D0%B5%D1%80%D0%BD%D1%83%D1%82%D1%8C%D1%81%D1%8F-%D0%BE%D1%82%D0%BA%D0%B0%D1%82%D0%B8%D1%82%D1%8C%D1%81%D1%8F-%D0%BA-%D0%B1%D0%BE%D0%BB%D0%B5%D0%B5-%D1%80%D0%B0%D0%BD%D0%BD%D0%B5%D0%BC%D1%83-%D0%BA%D0%BE%D0%BC%D0%BC%D0%B8%D1%82%D1%83 Как вернуться (откатиться) к более раннему коммиту?] | |||
* [https://githowto.com/ru?gf_page=upload обучение Git] | |||
* [https://habr.com/ru/post/342116/ Git на практике] | |||
* [[Ошибка git "fatal: unable to access 'https://...': Peer's Certificate issuer is not recognized."]] | |||
* [[ Push Error: RPC failed; result=22, HTTP code = 413]] | |||
'''ИСТОЧНИКИ:''' | '''ИСТОЧНИКИ:''' | ||
<hr> | <hr> | ||
* [https://habrahabr.ru/company/selectel/blog/305422/ Gogs: легковесный git-сервис ] | |||
* [https://habrahabr.ru/ | |||
* [https://ru.stackoverflow.com/questions/482760/%D0%9A%D0%B0%D0%BA-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B8%D1%82%D1%8C-git-%D0%B4%D0%BB%D1%8F-utf-8-bom-%D0%B1%D0%B5%D0%B7-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F-%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B8 Как настроить git для utf-8] | * [https://ru.stackoverflow.com/questions/482760/%D0%9A%D0%B0%D0%BA-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B8%D1%82%D1%8C-git-%D0%B4%D0%BB%D1%8F-utf-8-bom-%D0%B1%D0%B5%D0%B7-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F-%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B8 Как настроить git для utf-8] | ||
* [http://www.calculate-linux.org/main/ru/gitolite Gitolite + git настройка] | |||
* [https://git-scm.com/book/ru/v1/Git-%D0%BD%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5-Gitolite 8 Git на сервере - Gitolite] | |||
* [https://gogs.io/docs/installation/install_from_source Install from source gogs] | |||
* [https://linode.com/docs/development/version-control/install-gogs-on-debian/ Install Gogs on Debian 9 with nginx and PostgreSQL] | |||
* [https://gitea.io/en-US/ Fork Gogs] | |||
<hr> | |||
* [https://www.youtube.com/watch?v=H5TnunZIN40 Видео уроки GOGS] |
Текущая версия от 12:15, 4 августа 2022
GIT
* Команды git:
Создание нового репозитария:
touch README.md git init git add . git commit -m "first commit" git remote add origin http://gitserver.org/dev_user/testrep.git git push -u origin dev_user
- Как обнулить историю Git?
git reset --hard commitId #УДАЛЯЕТ ИСТОРИЮ GIT
или
Все эти инструкции верны, если на удаленном сервере у вас пусто, а локально - есть проект и репозиторий Git с историей, которую вы хотите удалить. Что будет потеряно безвозвратно
Собственно, история. Вы точно хотите ее потерять? Ради нее весь Git и придумывался. Весь код в не-слитых (unmerged) ветках. Весь код в orphaned ветках.
Быстрый способ
Найдите первый коммит в ветке, запомните его sha1.
git log --oneline
Переключитесь на тот коммит, который хотите сохранить в итоге.
git checkout master
Теперь используем git reset --soft чтобы сделать из всей истории один коммит (подробнее - пункт 4.1: Как вернуться (откатиться) к более раннему коммиту? ).
git reset --soft <first-commit-sha1> git commit -m'слил историю в один коммит'
Долгий способ
Сделайте бэкап локального репозитория. Можно запушить на резервный удаленный репозиторий, а можно просто взять и переместить папку .git в другое место.
mkdir ../git-backup mv .git ../git-backup/.git
Если не переместили локально, а забэкапили куда-то еще: удаляем папку.
rm -Rf .git
Теперь заново инициализируем репозиторий:
git init
Добавляем все файлы в рабочей области и делаем коммит.
git add . git commit -m'начал с нуля'
Когда все готово
Подключаем удаленный репозиторий и заливаем на него изменения:
git remote add origin <url> git push -u origin --all
- Если возникает ошибка: "Peer's Certificate issuer is not recognized"
используйте параметр: git -c http.sslVerify=false clone ...
GOGS
Git-Ifs
ПОЛЕЗНОЕ
- Моя шпаргалка по работе с Git
- Основы Git - Запись изменений в репозиторий
- Как вернуться (откатиться) к более раннему коммиту?
- обучение Git
- Git на практике
- Ошибка git "fatal: unable to access 'https://...': Peer's Certificate issuer is not recognized."
- Push Error: RPC failed; result=22, HTTP code = 413
ИСТОЧНИКИ:
- Gogs: легковесный git-сервис
- Как настроить git для utf-8
- Gitolite + git настройка
- 8 Git на сервере - Gitolite
- Install from source gogs
- Install Gogs on Debian 9 with nginx and PostgreSQL
- Fork Gogs