平衡点


2012/09/16

_ VCS用の proxy の設定アレコレ

VCS 毎に設定方法が違うのでメモ. というか 面倒すぎてアレ. なにかを一括変換したら, 全てに反映してくれる, とかだと良いのに.

http_proxy のみで良いなら良いのになぁ...

CVS

困った事に CVS には(Official には)proxy に関するサポートが 無い. Debian パッケージで提供されている CVS - qa.debian.org には proxyサポート 用のパッチが当たって, 環境変数 http_proxy を見てくれるけれども, それを当てにするのもちょっとどうなんだ, という.

結論から言えば, 結構絶望的. 「今時 CVS なんてm9(^Д^)プギャー」という話は置いておいて. 結構困るなぁ...

Subversion

~/.subversion/servers

[global]
# http-proxy-exceptions = *.localhost
http-proxy-host = proxy.example.com
http-proxy-port = 8080
# http-proxy-username = defaultusername
# http-proxy-password = defaultpassword

とか書いておくと良い

Git

netcat, socat, corkscrew のいずれかを導入しておく. たとえば

# source: sh
   #!/bin/sh
   #
   # License: WTFPL
   #---------------------------------------------------------------
   #
   # search $http_proxy
   #
   if ! test $http_proxy ; then
     echo "set \$http_proxy !"
     exit 1
   fi
   _proxy_server=`echo $http_proxy | cut -d':' -f2 | sed 's/\/\///g'`
   _proxy_port=`echo $http_proxy | cut -d':' -f3`
   #
   # search executable command
   #
   if `which corkscrew 2>&1 > /dev/null` ; then
     EXEC=`which corkscrew`
   elif `which socat 2>&1 > /dev/null` ; then
     EXEC=`which socat`
   elif `which nc 2>&1 > /dev/null`; then
     EXEC=`which nc`
   else
     echo "no proxy command"
     exit 1
   fi
   #
   # execute Git via proxy
   #
   case $EXEC in
     *corkscrew)
       exec $EXEC $_proxy_server $_proxy_port $1 $2
       ;;
     *socat)
       exec $EXEC STDIO PROXY:$_proxy_server:$1:$2,proxyprot=$_proxy_port
       ;;
     *nc)
       exec $EXEC -X 5 -x$_proxy:$_proxy_port $*
     *)
       echo "NO proxy command"
       ;;
   esac

なんて物を git-proxy.sh とか言う名前で用意しておいて, 環境変数で

http_proxy=proxy.example.net:8080
GIT_PROXY_COMMAND=~/bin/git-proxy.sh

なんて .

bazaar

環境変数 http_proxy を見てくれるので, これを設定しておくと良い.

mercurial

~/.hgrc

[http_proxy]
host = proxy.exameple.com:8080

とか書いておくと良い.


連絡先など
最近の日記
  • 2024/04/28
    • 1. CF-SR3 での生活環境構築 (できてない)
  • 2024/03/29
    • 1. Debian GNU/Linux on CF-SR3
  • 2024/03/25
    • 1. org-mode → beamer でのリスト記号の一時変更
  • 2024/03/22
    • 1. 静的htmlによるGit Repository Browser
  • 2024/02/15
    • 1. org-mode → bemaer での番号付きリスト
一覧
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|02|03|04|08|09|10|11|12|
2013|01|02|03|04|05|06|08|09|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|09|10|
2016|02|03|
2017|01|02|03|05|06|07|09|11|12|
2018|03|06|07|10|11|12|
2019|01|02|03|04|05|07|10|12|
2020|01|02|03|04|05|08|09|10|11|12|
2021|01|02|03|05|06|07|08|09|11|12|
2022|01|02|03|04|05|06|08|10|11|12|
2023|02|03|04|06|08|09|11|12|
2024|01|02|03|04|
Back to Top ▲