git的使用

自报家门:

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

创建版本库:

$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit
$ git init Initialized empty Git repository in /Users/michael/learngit/.git/

git add 和git commit -m "提示文字"命令的作用:

  将代码提交到仓库

git status和git log的作用:

  显示当前文件的改动和版本库中的最新版本

创建和替换到分支、以及查看分支:

//创建并切换到分支
$ git checkout -b dev
Switched to a new branch 'dev'
//等价于
$ git branch dev
$ git checkout dev
Switched to branch 'dev'
//查看当前分支
$ git branch
* dev
  master

将dev分支合并到master分支上去:

$ git merge dev
Updating d46f35e..b17d20e
Fast-forward
 readme.txt | 1 +
 1 file changed, 1 insertion(+)

删除分支:

$ git branch -d dev
Deleted branch dev (was b17d20e)

关联远程库:

$ git remote add origin git@github.com:michaelliao/learngit.git

将本地代码推送到远程库上:

$ git push -u origin master
Counting objects: 20, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (20/20), 1.64 KiB | 560.00 KiB/s, done.
Total 20 (delta 5), reused 0 (delta 0)
remote: Resolving deltas: 100% (5/5), done.
To github.com:michaelliao/learngit.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。

由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

从远程库上克隆:

$ git clone git@github.com:michaelliao/gitskills.git
Cloning into 'gitskills'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3
Receiving objects: 100% (3/3), done.

查看远程库信息和详细信息 :

//远程库信息
$ git remote
origin
//远程库详细信息
$ git remote -v
origin  git@github.com:michaelliao/learngit.git (fetch)
origin  git@github.com:michaelliao/learngit.git (push)

获取远程库分支代码:

//比如,要取回origin主机的next分支,与本地的master分支合并,需要写成下面这样 -
$ git pull origin next:master
//如果远程分支(next)要与当前分支合并,则冒号后面的部分可以省略。上面命令可以简写为:
$ git pull origin next

 版本退回:

  $ git reset --hard HEAD^

  ^表示退回上一个版本,要退回一百个版本为:

  $ git reset --hard HEAD~100

  根据id撤回版本,例如你后悔撤回了怎么办:

  $ git reset --hard 1094a

撤销工作区的修改:

  $ git checkout -- readme.txt

  这个命令就是让这个文件回到最近一次git commitgit add时的状态。

撤销暂存区的修改:

  $ git reset HEAD readme.txt

原文地址:https://www.cnblogs.com/Juaoie/p/9273034.html