Git常用命令汇集

2017-12-14  本文已影响9人  威武不能屈

工作区和暂存区

工作区:就是你电脑里能看到的目录,就是一个工作区
版本库:工作区有一个隐藏目录'.git',这就是Git的版本库,git的版本库里存了很多东西,其中最重要的就是stage(暂存区),及git为我们自动创建的第一个分支master以及指向masterd的一个指针叫HEAD


图1

简单的理解就是:需要提交的文件修改通通放到暂存区然后一次性提交暂存区所有修改到master。

初始化一个git仓库

将当前目录变为git可以管理的仓库
git init

添加文件到git仓库

分两步,第一步:
git add,可多次使用

$ git add test1.txt
$ git add test2.txt

第二步:
git commit,告诉git,把文件提交到仓库

$ git commit -m "修改内容描述文字"

-m 后面输入的是本次提交的说明,可以输入任何内容

查看仓库当前的状态

git status

查看文件修改内容

git diff

版本回退

管理修改

Git比其他版本控制系统设计得优秀是因为Git跟踪并管理的是修改而非文件
每次修改,如果不add到暂存区,那就不会加入到commit中

撤销修改

删除文件

git rm
从版本库中删除文件,用git rm删除文件,并commit

git rm test.txt
git commit -m "remove test.txt"

删除了本地文件,从版本库中恢复该文件

git checkout -- test.txt

如果一个文件已经被提交到版本库,就永远不用担心误删,但是,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容

关联远程库

想要本地库和远程库相关联,就需要:

  1. 命令git remote add origin git@server-name:path/repo-name.git
  2. 关联后,使用命令git push -u origin master第一次推送master分支的所有内容
  3. 之后就可以使用git push origin master推送最新修改

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

克隆远程库:

git clone http://…./**.git

查看远程库:

git remote
git remote -v 显示更详细的信息

创建并切换分支

git checkout -b branchname
相当于以下两个命令

查看当前分支:

git branch

删除分支:

git branch -d branchname

合并分支到当前分支:

git merge name

查看分支合并图

git log --graph

把当前工作现场“储藏”起来

git stash
这样就可以切换到其他分支处理紧急bug
处理完成后,再回到工作分支并:

丢弃一个没有被合并过的分支

git branch -D name,强行删除

创建远程分支到本地

git checkout -b dev origin/dev

查看远程库信息

git remove -v

抓取远程的新提交

git pull

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建
git branch --set-upstream branch-name origin/branch-name

创建标签

发布一个版本时,我们通常现在版本库中打一个标签,这样就能唯一确定打标签时刻的版本。Git标签是版本库的快照,其实它就是指向某个commit的指针
创建标签的步骤:

  1. 切换到需要打标签的分支git checkout branch-name
  2. 输入命令git tag v1.0,就可以打一个新标签

查看所有标签

git tag

删除标签

删除本地标签:git tag -d v1.0
删除远程标签:

  1. 先从本地删除 git tag -d tagname
  2. 从远程删除 git push origin :refs/tags/tagname

推送标签到远程

git push origin tagname
一次性推送全部尚未推送到远程的本地标签
git push origin --tags

git-cheat-sheet中列出了git的各种命令,可以打印出来备用。

图2
上一篇 下一篇

猜你喜欢

热点阅读