[Github]githubとgit

6369 ワード


git、githubの概念


gitとは?


イメージ管理ツール、すなわちバージョン管理システム.ソースコードの修正、管理を容易にします.
  • ソースコードは複数の人が並列に開発され、変更された履歴を表示できます.
  • のソースコードをある時点に戻すか、2つのバージョンの違いを表示できます.
  • これらの機能は、複数のブランチによって開発され、必要に応じて統合されることができる.開発したソースコードがGitで完了していない場合は、複数のファイルに分割して個別に変更できますが、Gitで1つのファイルから管理できます.一度に共通の部分を修正し、複数人で修正した履歴とバージョンを別々に存在させ、最終的に統合できるのは大きな利点です.
  • githubとは?


    GitHubはマイクロソフトのマイクロソフトウェアWebサービスであり、分散バージョン制御ソフトウェアGitGitに基づいてソースコードを管理し、コラボレーションサポート機能をサポートしています.すなわち、Githubは、Webを介してGitサービスと連携するコードを格納するサーバを提供する.
  • gitとgithubは違います.gitがこのファイルの変化を監視して記録する場合、githubはgitデータを記録するためのクラウドであり、Web上で複数人のgitデータを表示できる章である.
  • gitを使用する前提知識


    1.リポジトリ(リポジトリ)
    ファイルを格納するスペース.githubのアイテムを格納する単位と見なすことができます.2つのリポジトリが重要な概念です.
  • ローカルストレージ(ローカルリポジトリ):ファイルが私のPCに格納されているスペース
  • リモート・リポジトリ(Remote Repository):複数の人と共有するためのリポジトリ.リモートストレージ専用のサーバによって管理されます.

    githubページ共有のストレージスペースはremote repositoryです.
    https://buildgoodhabit.tistory.com/15?category=930760
    リモート・リポジトリの使用状況は、上記のアドレスでより詳細に表示できます.
  • 2.commit,push,pull
    ローカル(私のpc)で動作するコンテンツを他の人と共有するリモート・リポジトリに格納したり、リモート・リポジトリから私のpcにデータをインポートしたりする必要があります.このとき使用するコマンドはpush,pullである.その後、commitコマンドを使用してリモート・リポジトリの変更履歴を保持できます.
    https://sabarada.tistory.com/75
    3.branch
    1つのソースコードでは、複数の人が異なる操作を行うことができます.管理を容易にするために、それぞれ異なるブランチで作業してから、統合を行うことができます.すなわち,複数の開発者が同時に同一のソースコードでそれぞれの操作を行うことができる機能はブランチである.
  • プライマリ/プライマリブランチ:リポジトリの最初の作成時に自動的に作成されるベースブランチ.後に分裂した分岐を合併した中心茎と考えられる.このdefault branchはユーザによって変更することができ,主か主かを含むいくつかの興味深い議論も行われた.
  • https://github.blog/changelog/2020-10-01-the-default-branch-for-newly-created-repositories-is-now-main/
    自分のコードをgithubにアップロードする過程を見て、上の内容を感じてみましょう.

    githubにコードをアップロード


  • githubホームページ
    https://github.com/

  • 次の手順に従います.
    1.github会員加入
    2.git//gitbashのインストール
    3.リポジトリの作成
    4.git初期設定
    5.リポジトリ//initに接続し、リモートoriginを追加
    6.push
  • 本人のpcはウィンドウ環境なので、ウィンドウを基準に説明します.
    1.github登録会員に登録します.
    2.gitのインストール
    https://git-scm.com/downloads
    上のgitホームページで自分に合ったOSをダウンロードすればいいです.
    3.リポジトリの作成
    自分のgithub IDでログインすると次のページが表示されます.
    リポジトリが作成されていない場合は、newボタンではなくcreate repositoryボタンが表示されます.どちらも大丈夫ですから、そのボタンを押してください.

    これで次のような画面が見えます.必要に応じてrepository nameを設定し、create repositoryボタンをクリックします.

    これにより、以下に示すような簡略化されたリポジトリが生成されることがわかる.本人はREADMEmdを追加するオプションREADMEを選択します.mdは生成されました.

    4.git初期設定
    インストールしたgitを使う時だ.Git Bash Hereを自分がGithubにアップロードしたいフォルダに選択します.もちろんgit bashを直接実行し、cdコマンドを使用してフォルダにアクセスすることもできます.

    次のようにコマンドコマンドを入力できるウィンドウが表示されます.

    本人の名前とEメールを設定します.
    git config --global user.name "본인닉네임"
    git config --global user.email "본인깃허브이메일"
    上記のコマンドを入力します.

    5.ルートフォルダの接続
    あなたが入ったフォルダとリモートリポジトリを接続する必要があります.下記の図のように、本人のバニラrepositoryページからURLをコピーします.
    git init
    git remote add origin repositoty주소
    git bashに上記のコマンドを入力すると、2番目のコマンドのrepositoryアドレス部分に、先ほどコピーしたアドレスが置き換えられます.簡単に言えばgit initは、リポジトリとして使用されるディレクトリを初期化するためのコマンドです.このコマンドが正常に実行されている場合は、フォルダに移動します.gitというフォルダが現れたはずです.その後、remote add originはリポジトリフォルダとリモートリポジトリ接続を作成するコマンドです.このコマンドを実行しない場合、addやpushなどのコマンドを後で実行すると、gitはローカルリポジトリの内容がどこに格納されるべきか分からないため、エラーが発生する可能性があります.

    6.push
    次に、フォルダのコードをgithub repositoryに移動します.
    git add .
    git commit -m "first commit"
    git push origin main
    上記のコマンドを実行すればよい.addは、フォルダの内容をステージ領域に保存するコマンドです.ステージ領域とリモート・リポジトリが異なる領域であることを理解するには.commitは、変更内容の履歴を残すコマンドです.Pushは、最終的にローカルコンテンツをリモート・リポジトリに保存するコマンドです.add、commitとpushの間には微妙な違いがあります.さらに詳しくは、以下の住所に明記してください.
    http://daplus.net/git-git-%EC%B6%94%EA%B0%80-vs-%ED%91%B8%EC%8B%9C-vs-%EC%BB%A4%EB%B0%8B/

    しかし、コマンドを実行すると、エラーが発生する可能性があります.

    上記のエラーが発生した場合は、以下のコマンドで解決できます.macとウィンドウで作成したファイル間の距離にエラーが発生しました.coreに準じます.専制は解決できる.
    git config --global core.autocrif true
    2つ目のエラーはgit push origin mainが入力されているが、プライマリブランチにある場合です.これはbranchについてもっと理解する必要がありますが、簡単に言えば、mainbranchを作成し、次のコマンドを入力するか、git push origin masterコマンドを入力してmainbranchを作成する方法があります.
    git branch main
    git checkout main
    3つ目は、まずfetchが行われていないため、プッシュ時に拒否されたmain->main(fetchfirst)などのエラーが発生する可能性があります.これは、リモート・リポジトリの内容をローカル・ファイルのfetchにインポートしないと、ローカルとリモートの距離にエラーが発生する可能性があるためです.私のようにREADMEmd以外に、git push origin+mainコマンドで強制pushを行うか、fetchの後にpushを行うことで解決できます.
    コマンドが正常に実行された場合、ファイルがリポジトリに移動されたことを確認できます.やれやれ~
  • https://github.com/hum02/untactrip