0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gitでクローンができない問題と解決までの手順

Posted at

間違っているところもあると思いますが、現時点での理解。

そもそも

クローンとフォークの違い

フォーク:Github上でチームのリモートリポジトリを自分のリモートリポジトリにコピーすること
クローン:フォーク後にネット上のリモートから手元PCのローカルに持ってくる

フォークの後にクローン

ミス
リモート:間違えても影響なし
ローカル:自分が困る

クローンできない

行ったこと

(正しい順序という訳ではなくGit大初心者の私が試したことです)

1.sourcetreeでGutに紐付けアカウント作成
認証タイプ:OAuth
プロトコル:SSH

2.アカウントのSSHキーからGitでSSHキーを作成
SSHキーが無いと読み取りしかできずプッシュができないらしい

3.Github上でチームのリモートリポジトリを自分のリモートリポジトリにフォーク

4.sourcetreeのブックマーク画面で「リモート」を選択。制作したアカウントはあるが、フォークしたリポジトリが無い

5.ターミナルでデスクトップに移動し、「git clone SSHキー」を実行するも、下記エラー

ERROR: Repository not found.
fatal: Could not read from remote repository.

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

「リポジトリが無い。リモートリポジトリを読み込めない。作ってからクローンして。」
と言ってきた

1.ここで忘れたので、一応sourcetree内に空のリポジトリを置く
6.Gitユーザー名とパスワードを入力して「git clone HTTPSキー」を実行するも、下記エラー

remote: Support for password authentication was removed on August xx, 2021.
remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'HTTPSキー'

「パスワードは消されてる。このリンク見てね。」とのこと

リンク内まとめ

  • 開発時のプッシュ対象
    リモートリポジトリのHTTPS URLかSSH URLに対してプッシュする
    URLは名前(origin等)がつく

  • SSH(Secure Shell)とは
    ネットワークを介して別端末と通信するためのプロトコル。
    Shell(Macではターミナル):コンピューターへの入力を受け付けるもの。カーネルと人間の仲介

  • リモートURLとURLの名前を一致させる

git remote add URL名 <URL>
  • リモートURLの変更
git remote set-url URL名 <URL>
  • HTTPS URLでのクローン
    ファイアウォールまたはプロキシの内側にいる場合でも機能する
    Gitコマンド実行時、ユーザーIDとパスワードを入力
    ここで気づきました。

パスワードはGitアカウントのパスワードではなく、作成した「personal access token」のこと

Gitでpersonal access tokenを作り、実行。
デスクトップ上にクローンしたリポジトリを確認できました。

-SSH URLでのクローン
安全なプロトコルでクローンする。
sourcetreeにSSHキーペアを生成し、GitHubのアカウントに公開鍵を追加する(これはやった)
Gitコマンド実行時、ユーザーIDとパスワードを入力

ここでのパスワードとは、SSHキーのパスフレーズのこと

最後に

クローンには認証が大事なことが分かった。大事であることがsourcetreeでもGitコマンドでもかなり分かりにくいが。
sourcetreeでクローンできない→Gitコマンドでもエラー
で困っていた訳だが、sourcetreeだとどこでおかしいのか分かりにくいが、コマンドだとエラー文で原因の特定に近づくと思ったので、必ずしも初心者だからといってGitクライアントを使えばよいという訳でもないと思ったりした。

はじめてGitを使うため分からなすぎたが、わからないことを潰していくように調べ続けたら治るし、調べる過程が学習なので逃げずに1つづつ行っていきたい。

Gitの公式ドキュメントには感謝しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?