大体そんなもん diary

読んでみて「まぁ、大体そんなもん」程度の理解をしていただけるように書いていくつもりです。深く知りたい方はそっとお戻りください。

【Git】fatal: Not a valid object name: 'master'って怒られた【大体そんなもん】

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
ローカルリポジトリが作成できる

┓作業の流れ┓

⚠︎attention⚠︎

環境

Git 2.23.0.windows.1
OS Windows 64bit
コマンド GitBush

話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

エラー

原文

fatal: Not a valid object name: 'master'.

エラー内容

 masterが有効なオブジェクトじゃない。
 

エラー原因

 クローン後、既存で作成されるMasterブランチのことですね。それが有効じゃない。だからブランチも作れない....と。
.......知らんがな。こっちとら新参者じゃ。と、怒っていても仕方がないので対処します。

解決方法

 要は、有効にしろ。ってことなんでしょ。ならば、
 ①:以下のコマンドを入力

 $git add . 

「add」コマンドを使用して、コミット対象に設定。
 ②:ローカルリポジトリに対して、既存のMasterブランチをコミット。ちゃんとコメント付けちゃるで。

 $ git commit -a

 ③:上書きして、コミット完了。
   必要であれば、以下のコマンドを入力してlog確認。

 $ git log

どうやら、、マスターブランチに対して何もコミットが無いので、何かをコミットするか、空コミットを実施することで、ブランチが作成できるとのこと。

結構、はまって時間取ってしまった。


以上です。
お疲れ様でした。
f:id:Remora:20191026002203j:plain

【Git】fatal: not a git repository (or any of the parent directories): .git って怒られた【大体そんなもん】

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
ローカルリポジトリが作成できる

┓作業の流れ┓

⚠︎attention⚠︎

環境

Git 2.23.0.windows.1
OS Windows 64bit
コマンド GitBush

話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

エラー

原文

fatal: not a git repository (or any of the parent directories): .git

エラー内容

 現在いるカレントディレクトリがGitのリポジトリじゃないよね。
 

エラー原因

 内容通り、現在捜査しているカレントディレクトリがgitのリポジトリじゃないよ。とのこと

解決方法

 ①:まずは現在位置を確認しましょう

 pwb

 ②:色々作業しているとついつい移動してしまうので、「cd」コマンドで移動しましょう
   ※パスはご自身の環境に合わせて変えてください。

 cd ~/work/git

以上です。
お疲れ様でした。
f:id:Remora:20191026002203j:plain

【Git】Please make sure you have the correct access rights and the repository exists. って怒られた【大体そんなもん】

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
ローカルリポジトリが作成できる

┓作業の流れ┓


環境

Git 2.23.0.windows.1
OS Windows 64bit
コマンド GitBush

話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

エラー

原文

git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

エラー内容

 Clone対象のリポジトリに対してあなたにアクセス権限がない。と言っている...
 
 むむむ。私以外に操作している人はいないはず.....

エラー原因

 さくっと思いつくのが以下の2つ。(1つずつ、確認してみましょ。これ大事)
 1.作成した鍵が認証されていないのでクローンが作れない。
 2.Cloneする際、パスフレーズキーを入力せずにEnterを押してしまった。

1.作成した鍵が認証されていないのでクローンが作れない。

 まず、SSH接続が出来てますか??
 一度、以下のコマンドを入力して実行してみましょう。
 ※ホスト名はご自身の環境に合わせて変更してください。
  私の場合は「github

 ssh github

 どうでした??
 「ssh: Could not resolve hostname」みたいなエラーが出ました?
 

(1の解決方法)SSH鍵の設定を見直しましょう。

 エラーが出た方はSSH接続のところで怒られていますので、解決方法は以下の記事に記載しています。
 →[link]【Git】ssh: Could not resolve hostname って怒られた【大体そんなもん】

2.Cloneする際、パスフレーズキーを入力せずにEnterを押してしまった。

(2の解決方法) そのEnter。ちょっと待って。

 その方はきっと、パスフレーズを入力しなかったのが原因かと....
 なので、Cloneコマンドを実行し、Enter passphrase for key ....の箇所でパスフレーズを入力してEnterをクリックし手見てください。

以上です。

 因みに、私の原因は②でした。うわっ、恥ずかしい.....
 Enterって書いてあるからついつい読まずに押してしまったらしいです。はい....(笑)


お疲れ様でした。
f:id:Remora:20191026002203j:plain

【Git】ssh: Could not resolve hostname って怒られた【大体そんなもん】

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
SSH接続ができる。はず。

┓作業の流れ┓


環境

Git 2.23.0.windows.1
OS Windows 64bit
コマンド GitBush

話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

エラー

原文

ssh: Could not resolve hostname github: Name or service not known

エラー内容

 ホストの接続先がない。github?なんやそれ知らんけど。と言っている。

エラー原因

 さくっと思いつくのが以下の3つ。(1つずつ、確認してみましょ。これ大事)
 1.接続先がない(つまり、SSH Keyがない)。
 2.SSH Keyはあるけど、GitHubに登録していない。
 3.sshフォルダの設定ファイル(congig)がない。
 4.設定ファイル(.sshの中にあるconfigファイル)に接続先指定がない。

1.接続先がない(つまり、SSH Keyがない)??

ふむ。コマンドを打ってKeyファイルがあるかを確認。

 ls ~/.ssh

※私はWindowsユーザなので、Windows使っている方は、「Windowsマーク」+「R」で表示された『ファイルを指定して実行』画面の名前のところに「.ssh」を入力してEnterで中身を確認できます。打つのがめんどい方は是非。

どうですか?ファイル、ありました????
ない。という方は作りましょう!

(1の解決方法)鍵がないなら作ればいいじゃなーい

 別の記事にて書いているので、参照していただけると.....オナシャス。
 

2.SSH Keyはあるけど、GitHubに登録していない??

ならば、確認だ。

(2の解決方法)SSH Keyを登録する。

 ①:GitHubにログインしましょう。
 ②:ログイン後、画面右上の自分のアイコンの横にある「▽」をクリック。
 ③:メニューが表示されるので「Setting」を選択。
 ④:画面が切り替わり、画面の左側のメニューから「SSH and GPG keys」をクリック
 
 はい、どうですか?
 「This is a list of SSH keys associated with your account.」みたいな文字は表示されていますか?
 表示されている方は既にSSH keyは登録してあります。ので、後続の処理は行わなくて大丈夫です。
 表示されていない方、登録しちゃいましょう。
 ⑤:SSH KeysとGPG keysと選択できますが、「New SSH key」ボタンをクリック
 ⑥:画面が切り替わります
 ⑦:タイトルはお好きな名前を。Keyのところにはご自身のSSH Keyの内容を張り付けてください。
   SSH keyファイルの場所は以下のコマンドを入力して確認してください。

 ls ~/.ssh

 ⑧:入力したら「Add SSH key」ボタンをクリック
 
 登録手順は以上です。再度、SSH接続を試みてください。

3.sshフォルダの設定ファイル(congig)がない??

 おそらく、「.ssh」フォルダを手で作った方なのでは??

(3の解決方法)え?設定ファイルがない?ならばつくればいいじゃなーい

 どうせなので、GitBushで作ります。
 ①:SSH keyが置いてあるファイルまで移動します。(cdコマンド)
 ②:以下のコマンドを入力してください。

 vim ~/.ssh/config

 ③:編集モードになりました。以下の内容を入力してさい。
 ※「Host」や「IdentityFile」のリンク先はご自身の環境に合わせて変更してください。

Host github
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa.pub

④:上書きしてvimモードを終了。

再度、SSH接続を試みてください。

4.設定ファイル(.sshの中にあるconfigファイル)に接続先指定がない???

宜しい。ならば確認だ。

(4の解決方法)

 ①:以下のコマンドを入力して内容を確認します。

 vi ~/.ssh/config

 ②:設定ファイル(config)に定義されていますか?
   定義されていないのなら、定義しましょう。
   「IdentityFile」のリンク先にはGitHubで登録したSSH keyが存在しますか?

え?それ以外でもダメだって???

 .......そしたら、誤字ですね。


 私は、誤字でした。泣けるぜ...
 
お疲れ様でした。
f:id:Remora:20191026002203j:plain

【Git】pullするのやめませんか?【大体そんなもん】

【Git】pullするのやめませんか?【大体そんなもん】

                                              • -

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
pullとfetchの使い分けが理解できる

┓作業の流れ┓


話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

fetch(フェッチ)ってなに。

 Gitを使用するうえで、リポジトリはリモートとローカルの2つある事はご存じですね???
 fetchとはリモートリポジトリから最新情報をローカルリポジトリに持ってくるコマンドです。
 

pull(プル)ってなに。

 リモートリポジトリから最新情報をローカルリポジトリに持ってくるコマンドです。

......同じやんけ。
f:id:Remora:20191026000609j:plain

説明文は同じですが、実は「Fetch」と「Pull」は実行すると挙動が違うんです。

違いは?

 pullは「fetch + merge」を実行した結果になります。

違いについてもうちょい詳しく。

 Gitではブランチが大きく分けて3種類あります。
  1.リモートブランチ
  2.トラッキングブランチ(追跡ブランチ。とも言います。)
  3.ローカルブランチ
 
 fetchは、「トラッキングブランチ(追跡ブランチ)」に対して反映させます。
 pullは、「ローカルブランチ」に対して反映させます。

図解してみました。

【fetchの場合】
背景がピンク:「トラッキングブランチ(追跡ブランチ)」

f:id:Remora:20191031234505g:plain
fetch

【pullの場合】
背景がピンク:「トラッキングブランチ(追跡ブランチ)」

f:id:Remora:20191031234317g:plain
pull


と、いう感じです。

え、じゃぁなんで「pull」より「fetch」使ったほうが良いの?

 分かりやすくまとまった記事で勉強させていただきました。
 参考リンク:
dqn.sakusakutto.jp

 
 確かに、「pull」を使わなければ「fetch」と「merge」で最新版を取得するので「pull」より入力する手間が増えます。
 けれども、勝手に内部的にmargeされてしまうよりかは自分の操作を再確認。できるので、私もなるべく「fetch」と「merge」を使っていきたいと思います。

因みに....

 私も色々調べている中で、「pull = fetch + merge」という文をたくさん見ました。
 情報社会な今、疑うのが常識。
 なので、疑いました。が、既に検証されていた方がいました。
 参考リンク:git pullは、fetchしてmergeするのと同じなのか? | GMOメディア エンジニアブログ




 
圧倒的他力本願な私。
皆様、さすがです。
 

お疲れ様でした。
f:id:Remora:20191026002203j:plain

【Ajax】XMLHttpRequestが0の対処【大体そんなもん】

【Ajacx】「XMLHttpRequest=0」は突然に...【大体そんなもん】

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
XMLHttpRequest=0」が解決する。はず

┓作業の流れ┓

話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

現象 それはある日、突然に.....

勉強のために、Ajacxを使ったデータをjQueryを使用して書いていたら、
昨日までは動いていたのにいきなりエラーとなった。

........ぱーどぅん??

で、どんなエラーかな。とみるためにConsole.logで確認してみました。

$.ajax({
  url: 'xml/testData.xml',
  type: 'get',
  data: 'xml',
  dataType:' xml',
  timeout: 1000,
  error: function(XMLHttpRequest, textStatus, errorThrown) {
  	  alert("ロード失敗");
  	console.log("XMLHttpRequest : " + XMLHttpRequest.status);		//HTTPリクエストのステータス取得
  	console.log("textStatus     : " + textStatus);					//タイムアウト、パースエラー等のエラー情報
  	console.log("errorThrown    : " + errorThrown.message);			//例外情報の取得
        },
        success:function(xml){
        	//(通信成功時の処理)

で、そしたらConsoleに以下の内容が表示されてました。

XMLHttpRequest : 0
main.js:67 textStatus     : timeout
main.js:68 errorThrown    : undefined

原因はいくつかある。

①そもそも指定したurlが存在しない
②指定したurl先にあるファイルに対してアクセスできない
など....

url先にアクセスはできますか?
指定したファイルの記述はあっていますか?(そのファイル自体にエラーはでていませんか?)

一度確認してみましょう。



私の場合、確認したけどダメでした。
私はxmlデータを取得しようとしたのですが、ブラウザで見ても特にエラーを吐いておらず、アクセスもできました。

最終手段。

んー。と悩んで調べているうちに以下のリンクを見つけました。

参考:
stackoverflow.com


google先生に、へーへーと頭を下げながら翻訳してもらうと、
cookieを消してみ
と書いてありました。

私の場合、消したら動きました。
ちゃんとデータも取得できており、いやっふぅぅぅー!!って感じです。


以上です。
大体そんなもんなので....えっと、動いたので「なぜそうなったか」は調べてないです。
でも、きっとgoogle先生なら教えてくれると思うので聞いてみてください。

お疲れ様でした。
f:id:Remora:20191026002203j:plain

【Ajax】XMLHttpRequesがエラー【大体そんなもん】

始めましての方、初めまして。
それ以外の方、私だ こんにちは。

f:id:Remora:20191025205922j:plain
閲覧ありがとうございます。

この記事を読んでできること。
Ajaxの通信エラーが解消される

┓作業の流れ┓

⚠︎attention⚠︎

話が脱線しないように頑張ります。
では、行ってみよー!
f:id:Remora:20191025210502j:plain

XMLHttpRequest:200

原因

読み込もうとしたファイルが変換できないよ。と怒られてますね。

XMLHttpRequest : 200
textStatus : parsererror
errorThrown : JSON.parse: unexpected character at line 1 column 1 of the JSON data

対処

変換できない。と怒られているのでJSONファイルの中身を再確認。
開始と終了の括弧の数はあっていますか?括弧の種類は合っていますか?「,(カンマ)」は正しい位置にありますか?
目視で確認し、ご自身で『合っている』と思ったら、WebとかにあるJSONの成形ツールを使ってみてください。
私は、以下のサイトでお世話になっています。
https://tools.m-bsys.com/development_tooles/json-beautifier.php

XMLHttpRequest:404

原因

何かと目にする「404」。これは通信対象が存在しないよ。と怒られています。

XMLHttpRequest : 404
textStatus : error
errorThrown : undefine

対処

Ajacx通信する際のURL。正しいですか?
確認してみてください。おそらく、間違っていると思いますので。

XMLHttpRequest : 500

原因

サーバー側の不具合で通信できない状態。とのこと

XMLHttpRequest : 500
textStatus : error
errorThrown : undefine

.....は?╬
エラーが抽象的過ぎてわけわからん。

対処

「500」が表示された方、もしかして『type』は『POST』ではないでしょうか?
POST先で値を返していないのが原因。かと....なので、POST先で値を返すようにしてあげてください。

私が出したエラーはこれくらいなので、以上です。
でも、随時エラー出して怒られたら反省のために追記していく予定です。(予定は未定.....)


お疲れ様でした。
f:id:Remora:20191026002203j:plain