QtАвтоматизация рутины GIT в WindowsXP
Как-то приспичило мне начать пользоваться git, а до этого у меня накопилось много проектов. И нужно мне было сделать на каждый проект удаленный .git репозиторий. Для решения этой задачи был изобретен отличный велосипед. В результате — в контекстном меню проводника, если вызывать его для папок, появляется пункт меню «To .git», нажав на который, система создаст удаленный репозиторий вида .git рядом с папкой вашего проекта.

Создаем файл togit.bat со следующим содержимым:
  1.  
  2. @echo off
  3. set s=%1
  4. set s=%s:$=$$%
  5. set s=%s: =$_%
  6. set s=%s:\= %
  7. for %%t in (%s%) do (
  8. set name=%%t
  9. )
  10. set name=%name:$_= %
  11. set name=%name:$$=$%
  12. mkdir %name%.git
  13. cd %name%.git
  14. call git init --bare
  15. cd ../%name%
  16. call git init
  17. call git add .
  18. call git commit -m "First commit"
  19. ::#call git remote add tmpcpy file://%~dp1%1.git
  20. call git remote add tmpcpy file://%1.git
  21. call git push tmpcpy master
  22. call git remote rm tmpcpy
  23.  


Файл install.reg с содержимым:
  1.  
  2. Windows Registry Editor Version 5.00
  3.  
  4. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\togit]
  5. @="To .git"
  6.  
  7. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\togit\command]
  8. @="c:\\togit.bat %1"
  9.  


Файл uninstall.reg с содержимым:
  1.  
  2. Windows Registry Editor Version 5.00
  3.  
  4. [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\togit]
  5.  


Поместите файл togit.bat в корень диска «C:\ и запустите install.reg

Новый пункт контекстного меню проводника для папок добавлен.

Если развить эту идею, то можно сделать вложенное меню команд для автоматизации рутинных действий, например add->commit->push, такая легковесная замена TortoiseGIT
ОффтопМощь советской армии
МузыкаEndymion & The Viper - Smash
ОффтопБурундучок
UbuntuРабота с VIM
все подробности по ссылке http://dev-mark.blogspot.com/2010/12/vim_23.html
UbuntuЧасто используемые команды Linux
http://forum.ubuntu.ru/index.php?topic=124998.0
UbuntuDropbox в ubuntu-server 11.10
Установка
Взял отсюда.
Переходим в домашний каталог текущего пользователя:
  1. cd

Определяем какой разрядности у вас операционка 32Bit или 64Bit:
  1. sudo uname -a

Скачиваем dropbox для 32 битной:
  1. wget -O dropbox.tar.gz "http://www.dropbox.com/download/?plat=lnx.x86"

Для 64 битной:
  1. wget -O dropbox.tar.gz "http://www.dropbox.com/download/?plat=lnx.x86_64"

Распаковываем архив:
  1. tar -xzvf dropbox.tar.gz

После распаковки появится папка .dropbox.

Теперь нужно привязать ваш комп к аккаунту dropbox. Выполняете команду:
  1. ~/.dropbox-dist/dropboxd

Программа даст вам ссылку и будет проверять состояние каждые несколько секунд.
По этой ссылке нужно перейти в браузере, откроется сайт dropbox где вас попросят залогинится и ввети пароль для подтверждения связи вашего компьютера с аккаунтом.
После этого, при очередном обновлении, dropbox на сервере сообщит что «Client successfully linked... Останавливаем программу комбинацией клавишь Ctrl + C

Теперь делаем автозапуск.
Создаем файл:
  1. sudo vim /etc/init.d/dropbox

Вставляем внутрь следующий скрипт:
  1. #!/bin/sh
  2. # dropbox service
  3. # Replace with linux users you want to run Dropbox clients for
  4. DROPBOX_USERS="пользователь1 пользователь2"
  5.  
  6. DAEMON=.dropbox-dist/dropbox
  7.  
  8. start() {
  9. echo "Starting dropbox..."
  10. for dbuser in $DROPBOX_USERS; do
  11. HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
  12. if [ -x $HOMEDIR/$DAEMON ]; then
  13. HOME="$HOMEDIR" start-stop-daemon -b -o -c $dbuser -S -u $dbuser -x $HOMEDIR/$DAEMON
  14. fi
  15. done
  16. }
  17.  
  18. stop() {
  19. echo "Stopping dropbox..."
  20. for dbuser in $DROPBOX_USERS; do
  21. HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
  22. if [ -x $HOMEDIR/$DAEMON ]; then
  23. start-stop-daemon -o -c $dbuser -K -u $dbuser -x $HOMEDIR/$DAEMON
  24. fi
  25. done
  26. }
  27.  
  28. status() {
  29. for dbuser in $DROPBOX_USERS; do
  30. dbpid=`pgrep -u $dbuser dropbox`
  31. if [ -z $dbpid ] ; then
  32. echo "dropboxd for USER $dbuser: not running."
  33. else
  34. echo "dropboxd for USER $dbuser: running (pid $dbpid)"
  35. fi
  36. done
  37. }
  38.  
  39. case "$1" in
  40.  
  41. start)
  42. start
  43. ;;
  44.  
  45. stop)
  46. stop
  47. ;;
  48.  
  49. restart|reload|force-reload)
  50. stop
  51. start
  52. ;;
  53.  
  54. status)
  55. status
  56. ;;
  57.  
  58. *)
  59. echo "Usage: /etc/init.d/dropbox {start|stop|reload|force-reload|restart|status}"
  60. exit 1
  61.  
  62. esac
  63.  
  64. exit 0

Где пользователь1 и пользователь2 — список всех пользователей для которых следует запускать dropbox.

Даем права на запуск файла и добавляем в автозапуск:
  1. sudo chmod +x /etc/init.d/dropbox
  2. sudo update-rc.d dropbox defaults


Теперь можно управлять dropbox'ом как сервисом:
  1. sudo service dropbox start|stop|reload|force-reload|restart|status


И наконец добавляем скрипт для управления dropbox'ом из консоли:
Скачиваем скрипт и разрешаем всем его читать и запускать:
  1. wget -O ~/.dropbox/dropbox.py "http://www.dropbox.com/download?dl=packages/dropbox.py"
  2. chmod 755 ~/.dropbox/dropbox.py


Список комманд скрипта можно посмотреть так:
  1. ~/.dropbox/dropbox.py help


Полезные фишки
Если захочется запускать dropbox от имени другого пользователя, то нужно перенести программу следующим образом:
  1. sudo mv ~/.dropbox-dist /новая/папка
  2. sudo chown -R владелец:группа /opt/dropbox-dist
  3. sudo chmod -R go-w /opt/dropbox-dist

после этого следует остановить сервис, снова запустить файл dropboxd (см. начало этого мануала) и сменить в файле /etc/init.d/dropbox имя пользователя.
ОффтопПро ковер дома
Я ненавижу капчу на этом сайте!

Допиши. Пускай ковер дома меняется каждый день и сохраняется в архив. И прикрути к ковру комментарии, чтобы всегда можно было полистать и поностальгировать на былыми коврами.
UbuntuОграничение доступа к директории в Apache2
Блокирование доступа к какой-либо части сайта или всему серверу в целом.
Генерируем файл паролей .htpasswd
  1.  
  2. htpasswd -cd <путь к файлу паролей> <имя авторизируемого пользователя>
  3.  

В директории которую хотите заблокировать создаете файл .htaccess с содержимым:
  1.  
  2. AuthType Basic
  3. AuthName "Enter password please"
  4. AuthUserFile /<полный путь к файлу паролей>
  5. Require valid-user
  6.  

После этого нужно проверить настройки Apache2. В Ubuntu:
  1.  
  2. sudo vim /etc/apache2/apache2.conf
  3.  

Ищем строку
  1. AccessFileName .htaccess

Если ее нет, дописываем в конец файла.
После, смотрим настройки директории в которой расположен сайт. Эти настройки находяться в общем случае между тэгами
  1.  
  2. <Directory "/<полный путь к директории в которой расположен наш .htaccess>" >
  3. AllowOverride All
  4. </Directory>
  5.  
ОффтопWindows 8
image

Посты 1 — 10 из 153

В начало Предыдущая страница 1 2 3 4 5 ... Следующая страница В конец

© Дорошенко Алексей, 2010 — 2011.

О сайте | Правила | Реклама | Valid XHTML 1.0 Strict