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>

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>

HELP

Get help on the command line

$ git help <command>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值