Category: ‘git’

Proxy環境からBluemixのGitレポジトリへアクセスしclone取得する

2016年2月12日 Posted by PURGE

社内のProxy環境から、BluemixのGitレポジトリへアクセスしcloneする方法の覚え書き。

C:\Works>git config --global https.proxy https://proxy.server:8080
C:\Works>git config --global http.proxy http://proxy.server:8080

C:\Works>git clone https://hub.jazz.net/git/xxxxx/ProjectName
Cloning into 'ProjectName'...
Username for 'https://hub.jazz.net': xxxxx
Password for 'https://xxxxx@hub.jazz.net':
remote: Counting objects: 20, done
remote: Finding sources: 100% (20/20)
remote: Total 20 (delta 0), reused 20 (delta 0)
Unpacking objects: 100% (20/20), done.
Checking connectivity... done.

Capistrano3.x の覚え書き。

2015年9月22日 Posted by PURGE

以前といっても既に、3年程前に、Capstranoを設定していたが、既にCapstrano3.xの時代。
久しぶりに設定する機会があったので覚え書き。

Railsの設定
Gemfile にデフォルトでコメントアウトされている下記の記述を有効にして、bundle update 。

# Use Capistrano for deployment
gem 'capistrano-rails', group: :development
$ bundle update
$ capify .
--------------------------------------------------------------------------------
Capistrano 3.x is incompatible with Capistrano 2.x. 

This command has become `cap install` in Capistrano 3.x

For more information see http://www.capistranorb.com/
--------------------------------------------------------------------------------

capify . にて設定ファイルを作成しようとしたが、怒られたので、cap install を実行する。

$ cap install
mkdir -p config/deploy
create config/deploy.rb
create config/deploy/staging.rb
create config/deploy/production.rb
mkdir -p lib/capistrano/tasks
create Capfile
Capified

すると、Capfile と、config/deploy.rb、config/deploy/staging.rb、config/deploy/production.rb が作成される。

Gitのサーバ設定

Gitのインストール。

$ yum install git

Git共有リポジトリの作成。

$ mkdir /var/lib/git/public_git/sample.git
$ cd /var/lib/git/public_git/sample.git
$ git init --bare --share 

Gitのクライアント設定

$ git init
$ git add .
$ git commit -m "First commit"
$ git remote add sample ssh://User名@Host名:SSHポート番号/var/lib/git/public_git/sample.git
$ git push sample

Heroku に登録済みのアプリから、git:cloneする方法

2015年3月6日 Posted by PURGE

既にHerokuに存在するアプリを、別のPCでも修正したい為に、Herokuのレポジトリから、git:clone する方法の覚え書き。

c:\Works>heroku git:clone --app myHerokuApp MyHerokuApp
Cloning from app 'myHerokuApp'...
Cloning into 'MyHerokuApp'...
remote: Counting objects: 694, done.
remote: Compressing objects: 100% (618/618), done.
rReceiving objects:  88% (611/694), 164.00 KiB | 147.00 KiB/s   emote: Total 694
Receiving objects:  92% (639/694), 164.00 KiB | 147.00 KiB/s
Receiving objects: 100% (694/694), 236.61 KiB | 147.00 KiB/s, done.
Resolving deltas: 100% (338/338), done.
Checking connectivity... done.

database.yml 等の Git管理

2014年11月18日 Posted by PURGE

Railsプロジェクトを作成し、Git等のバージョン管理システムを使用してプロジェクトをそのまま git add、git commitしてしまい公開してしまうことがある。しかし、セキュリティ上思わしくない設定ファイル等がある。

database.ymlやsecrets.yml等だ。

そこで一度バージョン管理に入れてしまった場合に、バージョン管理から外す方法。

$ git rm --cached database.yml

–cachedオプションを使用しないと、ファイル自体削除されてしまうので注意。

そして再びバージョン管理されないように.gitignoreに下記を必ず追記する。

/config/database.yml

プロジェクトをチームで共有する場合には、database.ymlをコピーしてdatabase.yml.sample等を作成し、これをバージョン管理しておく方法がよい。当然、その中身に重要情報を記述してしまっては意味が無いので注意。

ちなみに、万が一–cachedオプションを使用しないで、ファイル自体を削除して焦ってしまった時のリカバリ方法。

$ git reset HEAD database.yml
$ git checkout database.yml

これは参考までに覚え書き。

git でファイルの復元

2013年6月8日 Posted by PURGE

ちょっとしたミスで、ファイルを削除してしまった。
その際に、リポジトリから復元する方法を記す。

削除してしまったファイルのディレクトリに移動して下記gitコマンド

git checkout deleted_file.txt

Herokuで使用しているClearDBへの接続

2013年6月1日 Posted by PURGE

個人的には MySQLが好きなのであるが、Herokuでは、デフォルトのDBが、Heroku Postgres になっている。
そこで、Heroku Add-onである ClearDBというMySQLアドオンを設定して利用してみる。

まずは、Herokuサイトにてログインして、ClearDBをアドオンしてみる。Igniteであれば 5MB無料で利用できる。

そして、Heroku Toolbeltコマンドラインからログインし、アドオンされた ClearDB の設定情報を確認してみる。

$ heroku config | grep CLEARDB_DATABASE_URL
CLEARDB_DATABASE_URL: mysql://userid:password@hostname.cleardb.com/heroku_12345?reconnect=true

上記の値を、DATABASE_URL (デフォルトではPostgresが設定されている)で上書き設定する。
注意点としては、使用するMySQLによって、 mysql2:// に変更すること。

$ heroku config:add DATABASE_URL='mysql2://userid:password@hostname.cleardb.com/heroku_12345?reconnect=true

問題なく設定できていれば、git pushしたアプリのmigrationが成功するはずである。

$ heroku run rake db:migrate

尚、上記の設定情報からもわかるように、MySQLツールにて設定すれば直接DBが参照可能となる。

gem install エラー

2012年10月9日 Posted by PURGE

結論から言うと、プロキシのせいでインストールがこける。
直接ダウンロードして、下記のようにインストールしようと思ってもダメ。

$ sudo gem install /usr/local/src/rails-3.2.8.gem
ERROR:  http://rubygems.org/ does not appear to be a repository
ERROR:  Error installing /usr/local/src/rails-3.2.8.gem:
        rails requires activesupport (= 3.2.8, runtime)

環境変数にプロキシの場所をしていしてもダメ。

$ export http_proxy=http://proxy:8888/

ダメな理由はわからないのだが、どうやら gemコマンド自身にも、プロキシ設定するオプションがあるようだ。

$ sudo gem install --remote rails -p http://proxy:8888/

Ruby の gem にせよ、Java の Maven にせよ、git にせよ。
インストールや依存関係の管理は便利なのだが、サーバ環境による設定は難しい。というより、知らないと時間をようしてしまう。この辺は、カンを働かせていかないとなぁ。

heroku 新規開発環境での環境構築

2012年7月11日 Posted by PURGE

herokuにアカウントを持って、別PCへ新規の開発環境を作成する手順。
元々、Macで開発を開始して、別ローカルPC(WindowsXP)にて環境構築する必要が出てきた。
とりあえず、Heroku Toolbelt をインストールして、コマンドラインから下記を実行。

C:\works>heroku login
Enter your Heroku credentials.
Email: xxxx@whoocus.com
Password (typing will be hidden):
Authentication successful.

そしてSSHキーを作成する。当然お初の環境なので、新規のPublic keyを発行する。

C:\works>heroku keys:add
Could not find an existing public key.
Would you like to generate one? [Yn] Y
Generating new SSH public key.
Uploading SSH public key C:/Documents and Settings/xxxx/.ssh/id_rsa.pub... done

すると、Windowsなので、ユーザフォルダ直下(C:\Documents and Settings\xxxx\.ssh)に、.sshフォルダ一式が作成される。
これでssh認証される。なんと簡単なことでしょう。

そして、git cloneコマンドにて、ローカルPC環境に複製する。

C:\works>git clone git@heroku.com:xxxx.git AppName
Cloning into 'XXXXX'...
Warning: Permanently added the RSA host key for IP address '99.99.99.999' to the list of known hosts.
remote: Counting objects: 413, done.
remote: Compressing objects: 100% (306/306), done.
remote: Total 413 (delta 140), reused 247 (delta 69)
Receiving objects: 100% (413/413), 94.00 KiB | 14 KiB/s, done.
Resolving deltas: 100% (140/140), done.

これで完了。

Git ユーザ情報設定

2012年7月10日 Posted by PURGE

$ git config --global user.name "Blowfish"
$ git config --global user.name 
Blowfish
$ git config --global user.email "blowfish@whoocus.com"
$ git config --global user.email 
blowfish@whoocus.com

gitエラー ‘heroku’ does not appear to be a git repository

2012年6月27日 Posted by PURGE

よく理解せずにheroku と gitを使用していると、表題のエラーとなてしまった。どうやらお手本通りにやって、heroku というレポジトリで操作していたらしいが、git remote add するようだ。

C:\works\Hoge>heroku info
=== hoge
Addons:        Shared Database 5MB
Database Size: (empty)
Git URL:       git@heroku.com:hoge.git
Owner Email:   hoge@xxxx.jp
Repo Size:     8M
Slug Size:     10M
Stack:         cedar
Web URL:       http://hoge.herokuapp.com/

C:\works\Hoge>git push heroku master
fatal: 'heroku' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

C:\works\Hoge>git remote add hoge git@heroku.com:hoge.git

C:\works\Hoge>git push hoge master
Counting objects: 208, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (178/178), done.
Writing objects: 100% (190/190), 34.40 KiB, done.
Total 190 (delta 56), reused 0 (delta 0)

後でちゃんとgitコマンドについては理解しておこうと思う。