日々淡々と進む日常に一つ足跡をスマートフォン用の表示で見る日々淡々と進む日常に一つ足跡を現役東大生がプログラミングに関して備忘録として記事を残していきます。この広告は、90日以上更新していないブログに表示しています。2017-03-15英語できるようになりたいはじめにこれからは、ブログっぽくするためタイトルとか適当な文にしていこうと思います。何か備忘録として残すことがあったら前みたいなタイトルにするかもです。22:49英語できるようになりたいTweet広告を非表示にするもっと読むコメントを書く2017-03-14Swift勉強その1Swift勉強その1今回からSwiftをやっていきます。Storeに投稿する」です。勉強その2Git勉強その2programming-it.hatenablog.comの続きです。レポジトリの取得レポジトリとはその1で簡単に説明しましたが、Gitによるバージョン管理をしているもののまとまりです(ファイル・ディレクトリなどのデータを含む)。レポジトリの取得ではすでにあるレポジトリ(サーバー・GitHubなど外部サイト)から取得する場合と自分でレポジトリを作る場合があります。initとコマンドを打つとそのディレクトリがGitの管理下に置かれます。これではまだそのディレクトリの中にあるファイルがコミットされていないので(修正済みの状態)ステージ済み→コミット済みこの流れをコマンドで打つ必要があります。.は全ファイル・フォルダを指す。commitのところのmがオプションとしてつけられているのが疑問に思った方もいると思います。これはコミットメッセージを次の"“の中の文字列で表す、という意味です。コミットメッセージは重要です。コミットメッセージによってほかの人がどういったコミットをしたのか把握するからです。Hubですでにあるレポジトリを自分のパソコンの中にコピー(クーロン)していきます。URLここでいうURLとはhttp://hogehoge.com/といった見慣れたものよりもID@ドメイン名://パスといったSSHでサーバーを扱うときに使っていく形式が多い気がします。上の2つの方法のいづれかでレポジトリができているとします。このレポジトリに新しくファイルを生成する(又は移動して持ってくる)とします。hogehoge.cssを新しくレポジトリに持ってくるそのファイルはまだレポジトリに保存されているわけではありません。修正済み・ステージ済み・コミット済みのいづれでもなくて、追跡されていない(untracked)ファイルとして存在しています。これを追跡されているようにする必要があります。statusでできます。パターンとしては以下のようになっています。--cachedも使えますが省略しました。通常時とはレポジトリに全ファイル・フォルダ保存されていて、コミット済みであることを指しています。-a")index.htmlが変更された(modified)ということが書かれていますね。index.htmlコミットされて(committed)はいないけれどステージ済みになっていることを示しています。clean最初のパターンと同じになりましたね。追跡されていない状態が生まれるってやりましたね。track)追跡されていない(Untracked)ファイルがhoge.txtであることが書かれています。commitしてあげればコミット済み(しかも追跡されている)ファイルとなります。Gitの管理下に置きたくないファイル・フォルダがあった時ディレクトリの中でもGitの管理に置きたくないファイルがあると思います。logファイルやGulpなどによって自動的に生成される静的ファイルなどやモジュールなどです。これらを除く方法として.gitignoreというファイルを生成すればいいです。そのファイルの中身に以下のように書くとします。*.logこれによってlogという拡張子を持つファイルが管理下になるのを防げます。管理下にあるためGitの管理下から外すことはできません。"comment"とすることでステージ済みのデータをコミットしていました。ここでmオプションをとってみましょう。すると、エディタが立ち上がります。これはその1でも書いたようにvimがデフォルトですね。mオプションつけてやれば基本的にいいと思います。addが面倒だという人もいると思います。commitにaオプションを付ければいいです。個人的には好きじゃないです。rmだとそのファイルがステージ済みでなくて変更済みとして扱われます。deleted"Git管理下に置きたくないけどファイルは取っておきたい!.gitignoreを使いましょう。initした後ですでにコミット済みであった場合は下のようにします。renamed"さて、今回はこれで以上です。公式ドキュメントはやりごたえありますねー。見ながら勉強していきました。画像などもこちらから引用させていただいています。Gitが既にインストール済みである状態です。インストール方法などはほかのサイトをあさってみてください。Bashを入れています。Gitとはバージョン管理システム。管理においては図のようにサーバー側にあるまとまりをローカル側でも持っている(このまとまりをレポジトリという)。サーバー・ローカルという関係だけでなく、ローカルだけでもファイル・ディレクトリの管理をすることもできる。昔の状態に戻ったりできるということ。~概念編~ファイル・ディレクトリが変更したときにその差分(変更点)だけ記録するのではなくその変更を踏まえたGit管理下のファイル・ディレクトリ全部を記録する。→利点として全部記録しているため、ローカルだけで事をすますことができる(昔の状態に戻ったりなど)。ネットを介してサーバーにアクセスしなくてもこういうのができるのは利点だ。Gitでのファイル・ディレクトリなどにはハッシュ値(例:24b9da6552252987aa493b52f8696cd6d3b00373)を与えられこれは参照・認証に使われる。Gitではファイル・ディレクトリ(以下データと言う)に対して3つの状態を与える。ここからはローカルでの話である。→データが完全にレポジトリに保存してある。あるデータに変更を加えた直後はレポジトリに保存されていない(コミット済みでない)。→コミット済みではないが変更を加えたデータ。→修正済みのデータに関してコミットするための印がつけられたデータ。流れとしては「データの変更→修正済み→ステージ済みにする→ステージ済み→コミット済みにする→コミット済み」となる。概念を理解したところでこっからは作業に行きます。個人情報登録まずは個人情報を登録していきます。作業するにあたって、コミットを誰がしたのかとかわかった方がいいですよね。hogehoge@ijm.comこのようにメールアドレスとユーザー名を登録します。エディタGitで使う時のデフォルトエディタとしてvimが入っています。Bashでvimがデフォルトで入っているのも、コミットするときに:wqでコミットメッセージを終わらせる(後でやります)のもこのことです。最初の概要としてはこんな感じです。いえば、最初の記事なのに自己紹介が遅れていましたね。(笑)現在東京大学にいる大学生です。プログラミングを趣味や課外活動でやっています。プログラミングの知識っていうのは、実践しないと覚えづらい・だけど先に事前知識をもっていないと何をすべきかもわからないことがある、というものだと思っています。事前知識を得ようとしても中々覚えられない状態を打破しようとブログとして残していくことにしました。つたない文章ですがどうかご付き合いください。勉強その1Tweet広告を非表示にするもっと読むコメントを書くプロフィールid:ijm現役大学生がプログラミングに関して備忘録として記事を残していきます。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。