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>

  • 相关阅读:
    2017-2018-2 20155206 《网络对抗技术》 实验六:信息搜集与漏洞扫描
    20155206 Exp5 MSF基础应用
    20155206 实验4 恶意代码分析
    20155206《网络攻防》第三次实验_免杀及其原理
    20155206 Exp2 后门原理与实践
    20155206赵飞 Exp1PC平台逆向破解及Bof基础实践
    J-19 集合对象
    J-18 集合对象
    J-17 集合对象
    J-16 集合对象
  • 原文地址:https://www.cnblogs.com/aprils/p/5026195.html
Copyright © 2011-2022 走看看