zoukankan      html  css  js  c++  java
  • git 理解和使用

    CREATE
    Clone an existing repository
    $ git clone ssh://user@domain.com/repo.git
    Create a new local repository
    $ git init

    LOCAL CHANGES
    Changed files in your working directory
    $ git status
    Changes to tracked files
    $ git diff
    Add all current changes to the next commit
    $ git add .
    Add some changes in <file> to the next commit
    $ git add -p <file>

    Commit all local changes in tracked files
    $ git commit -a
    Commit previously staged changes
    $ git commit
    Change the last commit
    Don‘t amend published commits!
    $ git commit --amend

    COMMIT HISTORY

    Show all commits, starting with newest
    $ git log
    Show changes over time for a specific file
    $ git log -p <file>
    Who changed what and when in <file>
    $ git blame <file>

    BRANCHES & TAGS

    List all existing branches
    $ git branch -av
    Switch HEAD branch
    $ git checkout <branch>
    Create a new branch based
    on your current HEAD
    $ git branch <new-branch>
    Create a new tracking branch based on
    a remote branch
    $ git checkout --track <remote/bran-
    ch>
    Delete a local branch
    $ git branch -d <branch>

    Mark the current commit with a tag
    $ git tag <tag-name>

    UPDATE & PUBLISH

    List all currently configured remotes
    $ git remote -v
    Show information about a remote
    $ git remote show <remote>
    Add new remote repository, named <remote> 
    $ git remote add <shortname> <url>
    COMMIT HISTORY
    MERGE & REBASE
    Download all changes from <remote>,
    but don‘t integrate into HEAD
    $ git fetch <remote>
    Download changes and directly
    merge/integrate into HEAD
    $ git pull <remote> <branch>
    Publish local changes on a remote
    $ git push <remote> <branch>
    Delete a branch on the remote
    $ git branch -dr <remote/branch>

    Publish your tags

    $ git push --tags

    MERGE & REBASE

    Merge <branch> into your current HEAD
    $ git merge <branch>
    Rebase your current HEAD onto <branch>
    Don‘t rebase published commits!
    $ git rebase <branch>
    Abort a rebase
    $ git rebase --abort
    Continue a rebase after resolving conflicts
    $ git rebase --continue
    Use your configured merge tool to
    solve conflicts
    $ git mergetool
    Use your editor to manually solve conflicts
    and (  after resolving) mark file as resolved
    $ git add <resolved-file>
    $ git rm <resolved-file>

    UNDO

    Discard all local changes in your working
    directory
    $ git reset --hard HEAD
    Discard local changes in a specific file 
    $ git checkout HEAD <file>
    Revert a commit (by producing a new commit
    with contrary changes)
    $ git revert <commit>
    Reset your HEAD pointer to a previous commit
    ...and discard all changes since then
    $ git reset --hard <commit>
    ...and preserve all changes as unstaged
    changes
    $ git reset <commit>
    ...and preserve uncommitted local changes
    $ git reset --keep <commit>

  • 相关阅读:
    Feign性能优化注意事项--超时
    Android MVP+Retrofit+dagger2+RxAndroid框架整合
    Android adb命令,linux中各种命令
    【视频音频】雷霄骅开源视音频项目汇总
    Android LitePal介绍与使用说明
    AndroidStudio第一次提交项目代码到git服务器/github
    Android框架之路——Fragmentation的使用(流式交互Demo)
    Android Studio 升级到3.0后出现编译错误.gradlecaches ransforms-1files-1.1*****-release.aar
    Android Studio你必须学会的快捷键(Eclipse转AS必看)
    Intellij IDEA常用配置详解
  • 原文地址:https://www.cnblogs.com/aprils/p/5026195.html
Copyright © 2011-2022 走看看