Git: различия между версиями

Материал из support.qbpro.ru
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://gist.github.com/mcxiaoke/055af99e86f8e8d3176e nginx-gitweb]
* [https://habrahabr.ru/company/selectel/blog/305422/ Gogs: легковесный git-сервис ]
* [https://habrahabr.ru/sandbox/79375/ Веб интерфейс для репозиториев]
* [https://stackoverflow.com/questions/23151339/set-utf-8-display-for-git-gui-differences-window Set UTF-8 display for Git GUI]
* [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


ПОЛЕЗНОЕ

ИСТОЧНИКИ: