目次
今日はGitから
昨日は途中で終わったので(笑)
【開発環境】Ruby on Railsのチュートリアルは、Cloud9・Git・Bitbucket・Herokuを勉強するのに最適かも【プログラミング】
Ruby on RailsのチュートリアルのGitから・・ Gitを使うとファイルのバージョン管理ができるということなんですが、普通は何人かで作る時に共有したり、プログラムをマージしたりというのに使います。一人で作る場合でも、書き間違ったりして元に戻す などができて便利らしい。
https://railstutorial.jp/chapters/beginning?version=5.0#sec-version_control
でもCloud9で作ったWorkspaceには、Gitはもう入っているようです。なので・・・Config設定でして、初期化します。
tom2rd:~/workspace $ git config --global user.name "名前" tom2rd:~/workspace $ git config --global user.email メアド tom2rd:~/workspace $ cd hello_app tom2rd:~/workspace/hello_app $ git init
と打ち込むと・・
リポジトリが初期化されます。
Initialized empty Git repository in /home/ubuntu/workspace/hello_app/.git/ tom2rd:~/workspace/hello_app (master) $
で、ファイル全部をリポジトリに追加しておきます
tom2rd:~/workspace/hello_app (master) $ git add -A
git status でみてみて・・その後、一回コミット(ファイルをセーブするみたいなこと)しておきます。
tom2rd:~/workspace/hello_app (master) $ git commit -m "Initialize repository"
Bitbucketでリポジトリの共有・ホスティング
Bitbucketにソースコードをアップロードするらしいです。BitbucketはGitリポジトリのホスティングと共有に特化したサイトらしいです。GitHubやGitLabなども同じようなことができると思うのですが・・・そのあたりは、コラム 1.4. GitHubとBitbucketを読んでみてください。
Bitbucketにアクセスして、アカウントを作ります。簡単なんで省略しますが・・・アクセスすると、
こんなダッシュボードが出てきます。
公開鍵で連携させる
Cloud9側で、公開鍵をまず取り出してみます。SSHで使う公開鍵は、以下のコマンドで見れます。
tom2rd:~/workspace $ cat ~/.ssh/id_rsa.pub
ssh-rsa に続く、長い文字列が出てきます。
それをコピーしておいて、Bitbucketに行って、右上のアバタークリックすると、アカウント管理が出てくるので、それをクリックして、SSH鍵をクリックして、追加をクリックして、ラベルを適当につけて、ペーストして、鍵を連携させます。
ダッシュボードに戻って、リポジトリの作成を押します
Project名を入れて、作ります。非公開のラジオボタンを押しておくことが注意点かな?
Get started with command line 既にプロジェクトがあります。 私はゼロからスタートします。
って出てくるので
既にプロジェクトがあります。 をクリックして、それに従います。
tom2rd:~/workspace/hello_app (master) $ git remote add origin ssh://git@bitbucket.org/tominagatetsuya/rubyonrailstutorial.git
と
tom2rd:~/workspace/hello_app (master) $ git push -u origin master
これを入力すると・・ Bitbucket側をリロードすると・・・
ちゃんとできていることが確認できます(笑)
次は、Readmeの編集ですが・・・
https://railstutorial.jp/chapters/beginning?version=5.0#sec-git_commands
Cloud9側で・・・
tom2rd:~/workspace/hello_app (master) $ git checkout -b modify-README
と入れると
Switched to a new branch 'modify-README'
て出てきて git branchって入れると、Readmeにスイッチされていることがわかります。
tom2rd:~/workspace/hello_app (modify-README) $ git branch master * modify-README
Readme.mdファイルをなんか編集しておいて git statusを見てみると・・Readme.mdが変更されたことがわかります。
tom2rd:~/workspace/hello_app (modify-README) $ git status On branch modify-README Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: README.md no changes added to commit (use "git add" and/or "git commit -a")
コミットする。
RAIZAPじゃないですが、コミットします(笑)。セーブするみたいな感じですかね? git commit -a -m ですね。
tom2rd:~/workspace/hello_app (modify-README) $ git commit -a -m "Improve the README file" [modify-README 9aa737c] Improve the README file 1 file changed, 7 insertions(+)
マージする。
マスターファイルに反映させるみたいな感じですかね。
git checkout master と git merge
tom2rd:~/workspace/hello_app (modify-README) $ git checkout master Switched to branch 'master' Your branch is up-to-date with 'origin/master'. tom2rd:~/workspace/hello_app (master) $ git merge modify-README Updating 8a7e265..9aa737c Fast-forward README.md | 7 +++++++ 1 file changed, 7 insertions(+)
ブランチの削除
さっきのをマスターに統合したので、さきほどのブランチを削除します。
tom2rd:~/workspace/hello_app (master) $ git branch -d modify-README Deleted branch modify-README (was 9aa737c).
プッシュする。
よくわからないけど、Gitにプッシュすれば、Bitbucketにも反映されます。
tom2rd:~/workspace/hello_app (master) $ git push Warning: Permanently added 'bitbucket.org,104.192.143.3' (RSA) to the list of known hosts. Counting objects: 3, done. Delta compression using up to 8 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 440 bytes | 0 bytes/s, done. Total 3 (delta 2), reused 0 (delta 0) To ssh://bitbucket.org/tominagatetsuya/rubyonrailstutorial.git 8a7e265..9aa737c master -> master
BitBucketをリロードしてみると・・ 変更したReadmeが表示されます。当たり前だけど(笑)
長くなったので、今日はここまで・・・次は いよいよHerokuですね。デプロイです。。
https://railstutorial.jp/chapters/beginning?version=5.0#sec-deploying
【開発環境(その3)】Ruby on Railsのチュートリアルは、Cloud9・Git・Bitbucket・Herokuを勉強するのに最適かも【プログラミング】
コメントを残していただけるとありがたいです