gitコマンドの概要

4458 ワード

  • は、バージョンライブラリを作成し、Git倉庫を初期化し、git initコマンドを使用する.Git倉庫にファイルを追加して、二段階に分けます.
  • 第一歩は、コマンドgit addを使用して、繰り返し使用して、複数のファイルを追加することができます.すべてのファイルを追加:git add.
  • 第二ステップは、コマンドgit comit-m「shuoming」を使用して完了します.
  • 作業エリアの状態を常に把握し、git statusコマンドを使用します.
  • .git statusがファイルが修正されたと伝えたら、git diffで修正内容を確認できます.
  • バージョンは
  • をキャンセルします.
  • HEADが指しているバージョンが現在のバージョンですので、Gitは私達がバージョンの歴史の間を行ったり来たりすることを許可します.id
  • シャトルの前に、どのバージョンに戻るかを決定するために、送信履歴をgit logsで確認することができます.git logs--pretty=oneline
  • は未来に戻ります.コマンド履歴をgit reflogsで確認して、未来のどれに戻るべきかを確認します.
  • ワークエリアと一時預かりエリア[画像のアップロードに失敗しました...(image-3 fb 6 f 6-1528365189013)]
  • git diff HEAD--readme.txtコマンドでワークエリアとバージョンライブラリの最新バージョンの違いを確認できます.
  • 修正シーン1をキャンセルします.作業エリアのあるファイルの内容を変更し、作業エリアの修正を直接廃棄したい場合は、git chocout-fileを命令します.シーン2:ワークエリアのあるファイルの内容を変更するだけでなく、一時保存エリアに追加した場合、修正を破棄したいです.二段階に分けて、第一歩はコマンドgit reet HEAD fileで、シーン1に戻り、第二ステップはシーン1で操作します.シーン3:不適切な修正をバージョンライブラリに提出した場合、今回の提出をキャンセルしたいです.参考バージョンは1節キャンセルしますが、リモートライブラリに転送されていないことが前提です.
  • ファイルを削除する
  •   git rm        。
    
     git checkout -- test.txt
    
    git checkout                   ,            ,   “    ”。
    
  • リモートライブラリ
  • を追加します.
            ,    git remote add origin git@server-name:path/repo-name.git;
    
       ,    git push -u origin master     master       ;
    
      ,       ,     ,       git push origin master      ;
    
  • リモートライブラリからgit cloneをクローンする[email protected]:willowkyes/gitskyil.git
  •        ,           ,    git clone    。
    
    Git      ,  https,   ssh     git      。
    
  • ブランチ管理
  • [      ...(image-63812-1528365189012)]
    
  • 連結ブランチを作成する
  • Git        :
    
        :git branch
    
        :git branch 
    
        :git checkout 
    
      +    :git checkout -b 
    
              :git merge 
    
        :git branch -d 
    
           :git log --graph --decorate --oneline --simplify-by-decoration --all
    
    [      ...(image-4bb4f9-1528365189012)]
    
    [      ...(image-72fc3-1528365189012)]
    
    [      ...(image-adb60e-1528365189012)]
    
    [      ...(image-f607d4-1528365189012)]
    
    [      ...(image-f247f2-1528365189012)]
    
  • 衝突を解決します.
         git log            :
    
    git log --graph --pretty=oneline --abbrev-commit
    
    git log --graph
    
    [      ...(image-bf2cea-1528365189012)]
    
    [      ...(image-4614b3-1528365189012)]
    
  • ブランチ管理ポリシー
  •      ,  --no-ff            ,         ,          , fast forward             。
    
    git merge --no-ff -m "merge with no-ff" dev
    
    [      ...(image-ccb5e1-1528365189012)]
    
    [      ...(image-472246-1528365189012)]
    
  • Bug分岐
  •   bug ,         bug      ,    ,    ;
    
              ,      git stash  ,     bug,   , git stash pop,      。
    
      git stash list  ,      stash   :
    
    $ git stash list
    
         stash,     ,  git stash list  ,       stash,   :
    
  • Feature分岐
  •      feature,        ;
    
                    ,    git branch -D 
  • 多人協力
  •        ,  git remote -v;
    
                   ,          ;
    
           ,  git push origin branch-name,      ,  git pull        ;
    
                   ,  git checkout -b branch-name origin/branch-name,              ;
    
                  ,  git branch --set-upstream branch-name origin/branch-name;
    
           ,  git pull,     ,      。
    
  • タグ
  • を作成します.
      git tag         ,   HEAD,       commit id;
    
    git tag -a  -m "blablabla..."        ;
    
    git tag -s  -m "blablabla..."   PGP    ;
    
      git tag        。
    
  • 操作ラベル
  •   git push origin           ;
    
      git push origin --tags               ;
    
      git tag -d           ;
    
      git push origin :refs/tags/or git push origin :tagname          。
    
  • 特別ファイルを無視する
  •        ,    .gitignore;
    
    .gitignore           ,     .gitignore     !
    
               ,   -f     Git:
    
    $ git add -f App.class
    
         ,   .gitignore     ,              ,   git check-ignore    :
    
    $ git check-ignore -v App.class
    
    .gitignore:3:*.classApp.class
    
  • 別名
  • を配置します.
    $ git config --global alias.unstage 'reset HEAD'
    
    git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%Creset' --abbrev-commit"