vimの設定ファイル.vimrcをgithubで管理する
最近自分のメインマシンであるMBAを買い換えたいなーという衝動にかられています。
PCを買い換えると、データの移行が本当に面倒だなーと感じます。
少しでも軽減するために今回vimの設定ファイルはgithubで管理することにしました。
※mac環境での使用を想定しています。
現状ホームディレクトリにある.vimrcを管理対象に変える。
途中で作成している.gitignoreは現状.DS_Storeしか記入していません。今後必要に応じて編集予定。
$ cd $ mkdir dotfiles $ mv .vimrc ./dotfiles/.vimrc $ cd dotfiles $ vi .gitignore $ git init $ git add ./ $ git commit -m "first commit"
ここいらでgithubにリポジトリーを用意する。
詳しくは公式のHelpやCreate A Repo · GitHub Help
ググレカスということで。
$ git remote add origin https://github.com/futabooo/dotfiles.git $ git push -u origin master
シンボリックリンクを作成しておく
$ cd $ ln -s ./dotfiles/.vimrc .vimrc
これでgithubでの管理ができるようになりました。
別環境で使いたい場合はgit cloneしてシンボリックリンクを作成する
$cd $ git clone https://github.com/futabooo/dotfiles.git $ ln -s ./dotfiles/.vimrc .vimrc
この方法を使えば色々な設定ファイルをgithubで管理できそうですね。
ソースからrubyをcheckinstallでインストールしたらなんかわけわからなくなった
rubyをインストールしようとして色々やっていたら、
なんかわけわからなくなった\(^o^)/
追記:2014/02/07
$ ./configure --prefix=/usr
にしたらいけた。なぜかはわからない。
追記:2014/02/06
rpmのインストールコマンド実行時にディレクトリの権限が書き換わってしまうらしい。
そっちはchownで治ったけど、セグメンテーション違反です。の方はいまだ治らず\(^o^)/
作業時参考URL
さくらのVPS を改めて使いはじめる 9 – Ruby、Redmine、Subversion | アカベコマイリ
CentOSにRubyをcheckinstallでRPMにしてインストールする。 - オープンソースこねこね
$ wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.0.tar.gz $ tar zxvf ruby-2.1.0.tar.gz $ cd ruby-2.1.0 $ ./configure $ make $ cp -p ./ruby ./bin/ #←これやらないと別のエラーに見舞われる ome of the files created by the installation are inside the home directory: /home You probably don't want them to be included in the package. それらを表示しますか? [n]: n それらをパッケージから除外しますか?(yesと答えることをおすすめします) [n]: n Some of the files created by the installation are inside the build directory: /home/futabooo/ruby-2.1.0 You probably don't want them to be included in the package, especially if they are inside your home directory. Do you want me to list them? [n]: n それらをパッケージから除外しますか?(yesと答えることをおすすめします) [y]: n tempディレクトリにファイルをコピー..OK Stripping ELF binaries and libraries...OK manページを圧縮..OK ファイルリストを作成..OK You requested to review the .spec file for this package. Now you'll have the chance to review and optionally modify this file. Enterキーを押すと続けます。 #viで編集するときに "//usr/local/bin/ruby" がなければたす RPMパッケージを作成..OK 注意: パッケージはインストールされません tempファイルを削除..OK doc-pakディレクトリを削除..OK バックアップパッケージを書き込み..OK temp dirを削除..OK ********************************************************************** Done. The new package has been saved to /root/rpmbuild/RPMS/x86_64/ruby-2.1.0-1.x86_64.rpm You can install it in your system anytime using: rpm -i ruby-2.1.0-1.x86_64.rpm ********************************************************************** $ sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/ruby-2.1.0-1.x86_64.rpm 準備中... ########################################### [100%] 1:ruby ########################################### [100%] $ ruby -v セグメンテーション違反です $ cd -bash: cd: /home/futabooo: 許可がありません
さくらVPSでmysql-server起動に失敗した時
現在下記の連載?をみつつさくらVPSでサーバー構築中。
さくらのVPS を使いはじめる 5 – MySQL のインストールと初期設定 | アカベコマイリ
エラー。
$ sudo /etc/rc.d/init.d/mysqld start MySQL Daemon failed to start. mysqld を起動中: [失敗]
ログ表示。
$ tailf /var/log/mysqld.log 140202 21:42:21 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 140202 21:42:21 [Warning] '--default-character-set' is deprecated and will be removed in a future release. Please use '--character-set-server' instead. /usr/libexec/mysqld: Table 'mysql.plugin' doesn't exist 140202 21:42:21 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 140202 21:42:21 InnoDB: Initializing buffer pool, size = 8.0M 140202 21:42:21 InnoDB: Completed initialization of buffer pool 140202 21:42:21 InnoDB: Started; log sequence number 0 44233 140202 21:42:21 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist 140202 21:42:21 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
これを
[mysqld] default-character-set=utf8
こう書き換える
[mysqld] character-set-server=utf8
これだけだと後半のエラーが解決しなかった。
それは下記のサイトでかいけつ。
さくらVPS mysqlが起動できない - プログラム開発 作業メモ
githubにsshで接続しようとした時にはまった
こちらを参考にしながら進めていました。
ターミナルからgithubのリポジトリにアクセスする設定(sshの設定) - Qiita [キータ]
結論。下記部分はおまけということでやらなかったのが良くなかった。
次はおまけです。sshコマンドのオプションを省略する設定です。
$ vi ~/.ssh/config Host github.com HostName github.com IdentityFile ~/.ssh/github_id_rsa User git
githubで作成したリポジトリにいざローカルからpushしようとしたらエラー発生
$ git push -u origin master The authenticity of host 'github.com (192.30.252.129)' can't be established. RSA key fingerprint is *************************************** Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'github.com' (RSA) to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
githubのヘルプをみる
Error: Permission denied (publickey) · GitHub Help
In that example, we did not have any keys for SSH to use. The "-1" at the end of the "identity file" lines means SSH couldn't find a file to use. Later on, the "Trying private key" lines also indicate that no file was found. If a file existed, those lines would be "1" and "Offering public key", respectively:
ヘルプに書いてあったコマンド打ってみる
$ ssh -vT git@github.com OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011 debug1: Reading configuration data /etc/ssh_config debug1: /etc/ssh_config line 20: Applying options for * debug1: Connecting to github.com [192.30.252.128] port 22. debug1: Connection established. debug1: identity file /Users/futabooo/.ssh/id_rsa type -1 debug1: identity file /Users/futabooo/.ssh/id_rsa-cert type -1 debug1: identity file /Users/futabooo/.ssh/id_dsa type -1 debug1: identity file /Users/futabooo/.ssh/id_dsa-cert type -1
マイナス1ってことはファイルが見当たらないらしい。。。
今回自分は参考URLみながら「github_id_rsa」って名前で作ったことを思い出した。
そして最初のおまけ設定をすることで解決。
configを書いていないとデフォで「id_rsa」を探しに行くってことなのかな。
はじめて業務外でチーム開発をして思ったこと
ほぼ反省。
チームとして
- 簡単なコーディング規約ぐらい決めておけばよかった
- 進捗報告はコードレビューしながら週1ぐらいでやればよかった
- 早めにバージョン管理を導入するべきだった
- ツールを途中で変更することも考えておくべきだった
リーダーという役割を担った自分個人として
- プレッシャーをもっとかければよかった
- 動くものを作るということをもっと伝えればよかった
- コードを書くべきではなかった
チームとして
簡単なコーディング規約ぐらい決めておけばよかった
最低限、定数名・変数名・関数名あたりで、
パスカルケース・キャメルケース・スネークケース・アッパーケース
のどれを何に使うのかぐらい決めておけばよかった。
今回の場合業務でJavaな人、PHPな人、C#な人が集まっていたわけで、
みんな普段の規約も違うので。。。
進捗報告はコードレビューしながら週1ぐらいでやればよかった
上の反省と絡む点もある。これやっとけば途中で気づけた。
もう一個はアプリケーションの全体に影響するような変数をそれぞれ
個別の担当箇所で作っていたこと。
gameClearFlag的なのが別のスクリプトに存在する。。。
Statusクラスとか途中で作る発想が生まれてたかもしれない。
早めにバージョン管理を導入するべきだった
最初の頃はzipで固めてLINEで共有してた\(^o^)/
さっさとバージョン管理導入するべきだった。
後半になって無理!ってなってから導入したが、
使い方もよく分からん状態であんま機能しなかった。
ちなみに今回はgitとcodebreakを使った。
その時チームメンバー向けにサクッと書いた記事
Unity4.3のプロジェクトをcodebreakで管理する - WhereToStart
ツールを途中で変更することも考えておくべきだった
連絡はほぼLINE使ってた。
ChatWork使えばよかった。
タスクふれない\(^o^)/
書いてて疲れてきました。休憩。
リッチマン、プアウーマンの石原さとみが超絶可愛い理由 - NAVER まとめ
リーダーという役割を担った自分個人として
プレッシャーをもっとかければよかった
もともと強制力のあった開発ではなかったのですが、
やるからにはもっとプレッシャーをかけて上げるべきだったと思いました。
なぁなぁでやってても何も身につかないし、
結局終わってもやり切った感がなくて楽しくないかもなーと思います。
みんながどう思ってるか知らんけど。
動くものを作るということをもっと伝えればよかった
モチベーションに関わるところですね。
どんなにちゃちくてもいいから最初に動くものを作るべきだと
もっと伝えればよかった。
最初っから機能洗いだして、担当振ってーとかやっていたけど、
それじゃ手が動かせない状態だったなーと。
みんな初めて触るUnityだったわけですし。
コードを書くべきではなかった
リーダーという役割を担っていながら自分で巻き取る作業が多かった。
いっそのこと自分は書かないと決めて役割をはたせばよかったなーと。
いや、理想は書きつつもリーダーとしての役割もやるべきだった。
どっかで「自分がリーダーなんて」って自分で上限決めてた感がありました。
まとめ
わーと30分ぐらいで書いたので文章もめちゃくちゃだし読みづらいかもしれませんが、
はじめて「チーム開発」をしたうえで思ったことを書きました。
チームメイトに聞いたらもっと色々でてきそうだなー(´・ω・`)
作ったアプリ近々GooglePlayに公開します。
GooglePlayで公開するためのkeystoreを作成する
ターミナルで下記コマンドを適宜書き換えて実行。
色々質問飛んでくるので全部入力すれば、カレントディレクトリにkeystoreファイルが作成される。
keytool -genkey -v -keyalg RSA -keystore 証明書ファイル名.keystore -alias 証明書別名 -validity 有効期限の日数
Windowsのバッチファイルでサービス起動
たちあげたい時にいちいちコントロールパネルから進むのめんどいということで
バッチファイル作成
net start postgresql-8.4
超簡単でした。