ローカルにgitリポジトリを作ってpushとかする方法
プロジェクトhogeを作成したいとき
以下のような手順になる
リモート(ローカル)になるリポジトリ作成
$ mkdir ~/Documents/local-repo // 単純に各種プロジェクトをまとめるディレクトリ $ cd ~/Documents/local-repo $ mkdir hoge.git // hogeプロジェクトのリモート(ローカル)になるディレクトリ $ cd hoge.git $ git --bare init // hogeプロジェクトのリモート(ローカル)を作成
hoge.gitではない適当なディレクトリに移動して
$ mkdir hoge $ cd hoge $ git init $ git push ~/Documents/local-repo/hoge.git master
注意!!
上記でpushできると書いたけど、
一回ファイルか何か作って、commitしておかないと、pushするときエラーがでた;;
これでOKだが、以後pushするたびに、毎回この長いのを打たないといけないので、
$ git clone ~/Documents/local-repo/hoge.git
してきて、以後そこで開発したほうがよい。
なぜかいままで使っていないvimのタブ移動とウィンドウ移動
タブ移動
コマンドモードで
gt
gT
タブ閉じる
q
qa
wqa
ウィンドウ移動
Ctr+ww
zshでRoRの補完
rails の zsh 補完関数書いた - Kōenji
を使わせていただいたら、うまくいった!
ただ、前回の記事で、
$ b-rails
というaliasを作っている手前、 b-rails だと補完できない。
そこで、
_b-railsを作った
ファイル名を_b-railsに変えて、中身は以下のdiffのように書き換えたらうまくいった(そこそこ試行錯誤した なんといってもfpathさえ知らなかったのだから...)。
$ diff _b-rails _rais 1c1 < #compdef b-rails --- > #compdef rails 17c17 < _b-rails() { --- > _rails() { 23c23 < _call_function - "_b-rails_${words[1]}" || _nothing --- > _call_function - "_rails_${words[1]}" || _nothing 556c556 < _b-rails "$@" --- > _rails "$@"
RoRの構築方法
.zshrcに次のalias, functionを作っておく
alias b='bundle exec' alias b-install-local='rbenv exec bundle install --path=vendor/bundle && rbenv rehash' alias b-rails='bundle exec rails' function b-rails-new { bundle exec rails new $1 --skip-bundle } alias b-rake='bundle exec rake'
Gemfile
$ bundle init
source "https://rubygems.org" gem "rails"
インストール
$ b-install-local
railsプロジェクト作成
$ b-rails-new プロジェクト名
railsプロジェクトセットアップ
$ cd プロジェクト名 $ b-install-local
サーバー起動
$ b-rails s
bundlerの構築方法
bundlerインストール
$ gem install bundler $ rbenv rehash
Gemfile作成
bundlerを使いたいプロジェクトで
$ bundle init
Gemfile編集
入れたいgemを書く
入れたいgemをインストール
$ bundle install --path=vendor/bundle
が、これだと、rbenvのRubyバージョンを使ってくれないので、
$ rbenv exec
を付けて
$ rbenv exec bundle install --path=vendor/bundle $ rbenv rehash
alias
.zshrcに
alias bundle-install-vendor-bundle='rbenv exec bundle install --path=vendor/bundle && rbenv rehash'
とか書いておくと便利かも
rbenvの構築方法
git から rbenv 導入
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
.zshrcの書き換え
パスを通す
$HOME/.rbenv/bin:
をパスの先頭に追加
rbenv initがシェル起動時に呼ばれるように
$ echo 'eval "$(rbenv init -)"' >> ~/.zshrc
で .zshrcを書き換える
Rubyをインストール(各種バージョン毎に行う必要あり)
$ rbenv install -l
でインストールできるバージョン一覧を確認。
$ rbenv install Rubyバージョン
でインストール
$ rbenv rehash
新しくRubyをインストールしたときにやらないといけないみたい
$ rbenv global Rubyバージョン
これで、
$ ruby
で普通にrbenvで指定したバージョンが使えるようになる。
rbenvコマンド(再掲あり)
$ rbenv install -l // インストールできるバージョン一覧 $ rbenv install Rubyバージョン // Rubyインストール $ rbenv versions // インストール済みのRuby一覧 $ rbenv rehash // よくわからないけどRubyインストールしたらやらないとだめみたい $ rbenv global Rubyバージョン // 全ディレクトリでこのRubyのバージョンを使う $ rbenv local Rubyバージョン // このディレクトリだけでこのRubyのバージョンを使う
-------------- 以下の方法で先に行ったがなんか上記の方が楽そう....... --------
違いがわからん
brew系
$ brew install openssl $ brew install readline
~/zshrcを書き換え系
パスを通すため
$HOME/.rbenv/bin:
をパスの先頭に追加
$ echo 'eval "$(rbenv init -)"' >> ~/.zshrc
で rbenv init が実行されるように
Rubyのインストール(バージョン都度 インストールの必要あり)
$ RUBY_CONFIGURE_OPTS="--with-readline-dir=`brew --prefix readline` --with-openssl-dir=`brew --prefix openssl`" rbenv install 2.0.0-p0
rbenvコマンド
$ rbenv versions $ rbenv global Rubyバージョン