最近またまた開発ネタに走っています。ソースの管理はGitHubで行っており、Visual Studioからも使っています。GitのローカルリポジトリのデフォルトフォルダがSSD上のCドライブのフォルダになってしまうので(ディスク容量を圧迫するので)Dドライブの開発用フォルダに変更することとしました。 Continue reading
Category Archives: Git
GitHubを使ってみる – 名前とメールアドレスの登録 –
GitHubを使っていますが、コミットした時のログに記録される名前とメールアドレスを登録していませんでした。なんかデフォルトの設定のままでした。
元々最初に設定しておくべき内容でした。登録する方法です。ここで設定した名前とメールアドレスがコミットした時に記録されます。
- 名前の登録
git config –global user.name “名前“ - メールアドレスの登録
git config —global user.email メールアドレス
例です。
- git config –global user.name “Tomokazu Kizawa”
- git config —global user.email tomokazu.kizawa@oulook.com
GitHubを使ってみる – 変更したファイルをPushする –
なんとかGitHubにPUSHすることが出来ました。というのが前回のお話。では、変更したファイルをPUSHする方法を書きます。
ファイルを変更した際に指定したファイルだけを更新したい場合
- git add ファイル名
指定した(変更)ファイル名を追加します - git commit -m “コメント”
コミットします。-mでコメントを追加します。 - git push origin master
Pushします。
または
- git commit -a
commitに-aオプションをつけると変更したファイルをコミットする。
コメントを追加する場合は-mも合わせて使います。
git commit -a -m “コメント” - git push origin master
Pushします。
GitHubを使ってみる(初めてローカルからリモートリポジトリにPushする)
今頃になってお恥ずかしい話ですが、GitHubを使おうとして悪戦苦闘していました。初めてローカルで作成したリポジトリをリモートリポジトリ(サーバー側ですね)にPushする方法です。
(「おいおいおい!!木澤君わかってないぞ」という突込みは大歓迎ということで)
GitHubに登録というのはVisual Studioから何となくなっていたのですが、コマンドラインで打ち込んでやったことはないのでやってみました。
Gitのインストール
まずは、WindowsでもMacでもgitをインストールしました。Windows版は下記からインストールしました。
https://git-scm.com/download/win
GitHubに新しいリポジトリを追加する
- github.comで”New repository”ボタンをクリックする。
- Repository nameに名前を付ける。(ここではEdgeExtGoogleSearch)
- Descriptionに適当にメモを書く。
- Publicを選択(Privateは有料で使用可)
- Initialize this repository with a READMEはとりあえずチェックを入れる。
↑実はこれが(このケースにおいては)よくなかった。(^_^;)詳しくは文末に書きます。 - [Create repository]ボタンをクリックする。
- URLの取得
作成したリポジトリのリンクをクリックして”Clone or download”をクリック
Clone with HTTPSを選択 https:から始まるURLをコピーしておくここからコマンドラインでローカルディスクに作成したファイルをサーバー(リモートリポジトリにアップする)
失敗例
ここからコマンドラインでgitのコマンドを打ち込んでリモートリポジトリにPushするのですが、Pushの段階で失敗してしまいました。たいていのGit入門的な記事では問題なくできているのですが、うまくいきませんでしたので失敗例と成功例を書きます。
- コマンドプロンプトを開き、登録したいソースコードがあるフォルダに移動する。
- 初期化
git init - ソースを追加
git add .
これでフォルダ配下のファイルは全て追加対象となります。 - ローカルリポジトリにコミット
git commit -m “新規追加”
何かコメントを書きます。 - リモートリポジトリの登録
git remote add origin https://github.com/tkizawa/EdgeExtGoogleSerch.git
(https:からの内容は上記7でコピーしたURL)
ここでURLがoriginという名前に登録される。エイリアス的なものと考えてください。 - git push origin master
デフォルトのブランチ(master)にアップする。
※ ここで問題
rejectedなんとかというエラーメッセージが出ます。
私の解釈ですが、すでに作成済みのリポジトリがありpull(ダウンロード)していないにも関わらず、ローカル側の内容をpush(アップロード)しようとしたということになります。でも、いろいろとサイトを見るとこの方法が多く書かれています。
ではでは、理屈からすると一旦、サーバ(リモートリポジトリ)の内容をpull(ダウンロード)してしまえばつじつまが合うのではないかと。
ということで下記の操作を行いました。
成功例
最初から書きます。
- コマンドプロンプトを開き、登録したいソースコードがあるフォルダに移動する。
- 初期化
git init - すでにリモートリポジトリに初期登録している内容をPullします。(ここがポイント)
git pull https://github.com/tkizawa/EdgeExtGoogleSerch.git - リモートリポジトリの登録
git remote add origin https://github.com/tkizawa/EdgeExtGoogleSerch.git - git push origin master
空の内容をデフォルトのブランチ(master)にアップする。 - ソースを追加
git add . - ローカルリポジトリにコミット
git commit -m “新規追加” - git push origin master
デフォルトのブランチ(master)にアップする。
空の内容をpushする必要はないかもしれませんが、これでうまくいきました。GitHubのサイトを見に行っても更新できています。
追記:本当に失敗したこと
GitHubで新規リポジトリを作成した際に下記の操作をしていました。
Initialize this repository with a READMEはとりあえずチェックを入れる。
ここでリポジトリの初期化をした上にローカルでもgit initを実行していました。上記操作はgit initに相当するとのことでローカルでgit initしているので不要でした。(教えていただきました。ありがとうございました。)既にリモートリポジトリで更新処理がされているのに、それを反映せずローカルのリポジトリをリモート側にPushしたためエラーとなったと考えています。
よって、上記の”Initialize…”のチェックを入れなければ失敗例と書いたとおりにやってもエラーとなりません。確認済みです。