Skip to end of metadata

Go to start of metadata

Here is a list of some basic Git commands to get you going with Git.

For more detail, check out the  Atlassian Git Tutorials  for a visual introduction to Git commands and workflows, including examples.

Git task Notes Git commands
Tell Git who you are

Configure the author name and email address to be used with your commits.

Note that Git strips some characters (for example trailing periods) from user.name.

git config --global user.name "Sam Smith"

git config --global user.email sam@example.com

Create a new local repository

 
git init

Check out a repository

Create a working copy of a local repository:
git clone /path/to/repository
For a remote server, use:
git clone username@host:/path/to/repository

Add files

Add one or more files to staging (index):
git add <filename>

git add *

Commit

Commit changes to head (but not yet to the remote repository):
git commit -m "Commit message"
Commit any files you've added with git add, and also commit any files you've changed since then:
git commit -a

Push

Send changes to the master branch of your remote repository:
git push origin master
Status
List the files you've changed and those you still need to add or commit:
git status

Connect to a remote repository

If you haven't connected your local repository to a remote server, add the server to be able to push to it:

git remote add origin <server>
List all currently configured remote repositories: git remote -v

Branches

Create a new branch and switch to it:
git checkout -b <branchname>
Switch from one branch to another:
git checkout <branchname>
List all the branches in your repo, and also tell you what branch you're currently in:
git branch
Delete the feature branch:
git branch -d <branchname>
Push the branch to your remote repository, so others can use it:
git push origin <branchname>
Push all branches to your remote repository:
git push --all origin
Delete a branch on your remote repository:
git push origin :<branchname>

Update from the remote repository

Fetch and merge changes on the remote server to your working directory:
git pull
To merge a different branch into your active branch:
git merge <branchname>

View all the merge conflicts:

View the conflicts against the base file:

Preview changes, before merging:

git diff

git diff --base <filename>

git diff <sourcebranch> <targetbranch>
After you have manually resolved any conflicts, you mark the changed file:
git add <filename>

Tags

You can use tagging to mark a significant changeset, such as a release:
git tag 1.0.0 <commitID>
CommitId is the leading characters of the changeset ID, up to 10, but must be unique. Get the ID using:
git log
Push all tags to remote repository:
git push --tags origin

Undo local changes

If you mess up, you can replace the changes in your working tree with the last content in head:

Changes already added to the index, as well as new files, will be kept.

git checkout -- <filename>
Instead, to drop all your local changes and commits, fetch the latest history from the server and point your local master branch at it, do this:
git fetch origin

git reset --hard origin/master

Search

Search the working directory for foo(): git grep "foo()"

Copied from: https://confluence.atlassian.com/display/STASH/Basic+Git+commands

最新文章

  1. java中的等于
  2. bzoj 3718
  3. 【SpringMVC】SpringMVC系列3之@PathVariable映射URL占位符参数
  4. web开发必须知道的javascripat工具
  5. Coffee Script 笔记 1
  6. 纯JS画点、画线、画圆的方法
  7. linux解压zip、bz、bz2、z、gz、tar(解包)
  8. POJ_3662_Telephone_Lines_(二分+最短路)
  9. 修改字符串 ToCharArray()
  10. 591 - Box of Bricks
  11. 无需安装SqlServer打开并管理SqlServer数据库的方法
  12. 视音频编解码学习工程:FLV封装格式分析器
  13. LeetCode算法题-Minimum Depth of Binary Tree(Java实现)
  14. iOS - APP审核Guideline 2.5.1被拒,使用了私有API
  15. sqlplus与shell互相传值的几种情况
  16. 利用HBuilder打包前端开发webapp为apk
  17. 基于jquery的插件turn.js学习笔记
  18. Security2:角色和权限
  19. msiexec安装参数详解
  20. BZOJ1073 k短路(A*算法)

热门文章

  1. [LeetCode] Pyramid Transition Matrix 金字塔转变矩阵
  2. [LeetCode] Valid Square 验证正方形
  3. 什么是HTTP Referer?
  4. [Luogu 2817]宋荣子的城堡
  5. [SDOI2011]黑白棋
  6. 【BZOJ3224】【tyvj1728】普通平衡树
  7. 习题9-5 UVA 242
  8. 杜教筛进阶+洲阁筛讲解+SPOJ divcnt3
  9. 提高Mysql查询速度的一些建议(转).
  10. 构建纯TypeScript应用