Skip to content

rusidea/analitika

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Журнал "Аналитика"

Полная официальная версия журнала "Аналитика".

Инструкции по запуску журнала и публикации в сети интернет см. в файле INSTALL.txt.

Процедуры Git

Получить журнал и все выпуски аналитики на локальный компьютер:
git clone --recursive https://github.com/rusidea/analitika.git

Обновить журнал и выпуски аналитики:
git submodule update
git pull

Восстановить журнал к исходному виду (в случае удаления каких-либо файлов):
``

Работа с тематическими выпусками

Документация:
https://git-scm.com/docs/git-submodule
https://git-scm.com/docs/gitmodules
https://git-scm.com/book/en/v2/Git-Tools-Submodules (see NOTE)

Есть возможность изменить репозиторий выпуска (после git submodule init):
git config submodule.SUBMODULE_NAME.url PRIVATE_URL

Скачать все выпуски:
git submodule update --init либо git clone --recursive Git_URL.

Синхронизировать все выпуски:
git submodule update

Записать локальные изменения на удалённый репозиторий:

cd dokuwiki/data/media/pub/[выпуск]
git checkout master
git pull
git add .
git config user.name "Admin"
git config user.email rusidea.info@yandex.ru
git commit -m "vX.X.X"
git push -u origin master

Удалить выпуск:

git rm --cached dokuwiki/data/media/pub/[выпуск]
rm -rf .git/modules/dokuwiki/data/media/pub/[выпуск]
vim .gitmodules
vim .git/config
git commit -m "Выпуск удалён"

Если необходимо удалить все файлы выпуска локально, то:
rm -rf dokuwiki/data/media/pub/[выпуск]

Если^ редактировать .gitmodules, то необходимо синхронизировать с .git/config:
git submodule sync

Создать выпуск:

mkdir dokuwiki/data/media/pub/[выпуск]
cd dokuwiki/data/media/pub/[выпуск]
git init
git remote add origin Git_URL
git add .
git commit -m "Тематический выпуск аналитики"
git push -u origin master
git submodule add Git_URL dokuwiki/data/media/pub/[выпуск]

или

git submodule add ../analitika_[выпуск].git dokuwiki/data/media/pub/[выпуск]

Добавить выпуск:

git submodule add Git_URL dokuwiki/data/media/pub/[выпуск]

или

git submodule add ../analitika_[выпуск].git dokuwiki/data/media/pub/[выпуск]

Подготовка и публикация официальной версии журнала

Редактировать историю изменений в выпусках:
https://git-scm.com/book/be/v2/Git-Tools-Rewriting-History

Опубликовать выпуски

Клонировать репозиторий Git локально без инициализации модулей

Обновить ветку master:

git checkout master  
git pull

Установить контактные данные редактора:

git config user.name "Admin"  
git config user.email rusidea.info@yandex.ru

Произвести завершающее редактирование:

vim dokuwiki/data/pages/pub.txt
vim dokuwiki/data/pages/index.txt

Добавить отредактированные файлы:

git add dokuwiki/data/pages/pub.txt
git add dokuwiki/data/pages/index.txt

Записать все изменения в один коммит в стандартном виде:

git commit -m "Журнал vX.X.X готов к публикации"

Заблокировать ветку master на запись изменений:
?

Записать изменения ветки master в ветку release:

git checkout release  
git branch -vv  
git merge --squash master

Записать все изменения в один коммит в стандартном виде:

git commit -m "vX.X.X"

Произвести слияние ветки public с веткой release:

git checkout public  
git branch -vv  
git merge --squash release

Записать все изменения в один коммит в стандартном виде:

git commit -m 'Полная версия vX.X.X журнала "Аналитика"'

Проверить историю изменений ветки public:

git log --pretty=oneline -5

Произвести слияние ветки release с веткой public:

git checkout release  
git branch -vv  
git merge public

Произвести слияние ветки master с веткой release:

git checkout master  
git branch -vv  
git merge release

Опубликовать ветку public в репозитории на github.com:

git checkout public
git remote add github https://github.com/rusidea/analitika.git
git push github public:master

Произвести слияние ветки webserver с веткой release и подготовить к записи на сервер:

git checkout webserver  
git branch -vv  
git revert 'hash of the last patch commit'  
git merge public  
git log --pretty=oneline -5  
git am webserver.patch  

или

vim webserver.patch  
git apply --check webserver.patch  
git apply webserver.patch  
git commit -m "Изменения для публикации на вебсервере"

Файл .htaccess внесён в список игнорируемых, поэтому нужно его создавать отдельно.

Для подготовки файла изменений:

git format-patch master (or any commit) --stdout > webserver.patch

Скачать все выпуски:

git submodule update --init

Записать журнал на веб-сервер:

cd dokuwiki; lftp -c "open -u login analitika.rusidea.info; mirror -c -R -e   ./ ./"

Проверить получение журнала и всех выпусков аналитики на локальный компьютер (см. выше).

Полезные ссылки:
https://ariejan.net/2009/10/26/how-to-create-and-apply-a-patch-with-git/
https://git-scm.com/docs/git-format-patch
https://git-scm.com/docs/git-apply
https://git-scm.com/docs/git-am
http://stackoverflow.com/questions/6658313/generate-a-git-patch-for-a-specific-commit
http://stackoverflow.com/questions/4114095/revert-git-repo-to-a-previous-commit
http://stackoverflow.com/questions/927358/how-do-you-undo-the-last-commit
http://stackoverflow.com/questions/5189560/squash-my-last-x-commits-together-using-git
https://help.github.com/articles/pushing-to-a-remote/

Рабочие заметки

Для синхронизации на сайт:
cd dokuwiki; lftp -c "open -u login analitika.rusidea.info; mirror -c -R -e ./ ./"

Для синхронизации с сайта:
cd dokuwiki; lftp -c "open -u login analitika.rusidea.info; mirror -c -e ./ ./"

Возможно стоит посмотреть на инструкции для работы с Git по адресу:
https://www.mediawiki.org/wiki/Download_from_Git/ru

Мы используем аналогичную систему доставки кода.

https://about.gitlab.com/2015/02/17/gitlab-annex-solves-the-problem-of-versioning-large-binaries-with-git/

Обновление

Перед обновлением всегда читать: https://www.dokuwiki.org/install:upgrade

В плагине SQLite была изменена (commit 35dda729c418a63c884103b837f581187c51246b) переменная config['metadir'] на config['dbdir'], поэтому при обновлении плагина необходимо будет вновь изменить. Такая же переменная была изменена (commit 2f2a6435cc89841c7b65229caf88e02d5ac7a899) в плагине struct в файле dokuwiki/lib/plugins/struct/helper/db.php.

Обновление встроенных вебсервера и php производить скриптом https://github.com/splitbrain/dokuwiki-stickbuilder

Для этого:

  1. клонировать репозиторий на linux машину,
  2. отредактировать файл build.sh (параметр PHP_ZIP со значением на актуальную версию php)
  3. запустить скрипт ./build.sh
  4. upx не обязательно устанавливать
  5. удалить в журнале директорию server git rm -rf server/; rm -rf server/ 5.1. копировать ext/php_sqlite3.dll into server/php/ext/ 5.2. добавить в server/php/php.ini php_sqli3 extension
  6. копировать out/server в директорию журнала и добавить в Git git add server/*

About

Полная официальная версия журнала "Аналитика" http://analitika.rusidea.info

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published