Android开发经验谈首页投稿(暂停使用,暂停投稿)@IT·互联网

初始Git常用相关命令

2016-07-10  本文已影响471人  清枫_小天

初始Git常用相关命令

下载Git
国内镜像
“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

安装完成后,还需要最后一步设置,在命令行输入:

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com" 
  1. 创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录

    $ mkdir learngit
    $ cd learngit
    $ pwd //pwd命令用于显示当前目录

  2. git init //把这个目录变成Git可以管理的仓库(当前目录下多了一个.git的目录,默认是隐藏)

  3. 假设我们现在有一个readme.txt(一定要放在git仓库目录下learngit)文件并有相应的内容

  1. git status命令看看结果
  2. git diff这个命令看看修改的结果 eg:git diff readme.txt
  3. git log命令查看修改的历史纪录,如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline 参数。eg:git log --pretty=oneline,在这里你看到的一大串类似3628164...882e1e0的是commit id(版本号)
  4. git reset命令回退版本,上一个版本就是HEAD,上上一个版本就是HEAD,当然往上100个版本写100个eg:git reset --hard HEAD^
  1. git reflog用来记录你的每一次命令
  2. git checkout -- file可以丢弃工作区的修改(工作区指还未add前,add之后,commit之前叫暂存区)。eg:git checkout -- readme.txt
  1. 撤销修改git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区:eg:git reset HEAD readme.txt
  2. 删除文件 rm test.txt
    这个时候,Git知道你删除了文件,因此,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了:(git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”)

  1. 创建SSH Keyssh-keygen -t rsa -C "youremail@example.com"然后一路回车,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,
  2. 在GitHub上新建这个learngit仓库。git remote add origin git@github.com:HappyXiaoTian/learngit.git添加后,远程库的名字就是origin
  3. git push命令,把本地库的内容推送到远程,实际上是把当前分支master推送到远程.eg:git push -u origin master
  4. git push origin master只要本地作了提交,就可以通过以上命令
  5. 从远程库克隆登陆GitHub,创建一个新的仓库,名字叫gitskills。git clone克隆一个本地库eg:git clone git@github.com:HappyXiaoTian/gitskills.git

分支

  1. git checkout -b dev我们创建dev分支,然后切换到dev分支。相当于如下两行命令:
    • $ git branch dev
    • $ git checkout dev
  1. git branch命令查看当前分支
  2. git merge命令用于合并指定分支到当前分支eg:git merge dev(假设当前分支是master,就是将dev分支合并到master分支)
  3. git branch -d dev删除dev分支
  4. git merge --no-ff -m "merge with no-ff" dev准备合并dev分支,请注意--no-ff参数,表示禁用Fast forward
  5. git stash把当前工作现场“储藏”起来,等以后恢复现场后继续工作
  6. git stash list命令看看刚才的工作现场存到哪去了
  7. Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:
  1. git branch -d feature-vulcanfeature-vulcan分支还是必须就地销毁git branch -D feature-vulcan强行删除
  2. git push origin master推送master分支

标签

  1. git tag <name>就可以打一个新标签eg:git tag v1.0
  2. git tag查看所有标签
  3. git log --pretty=oneline --abbrev-commit找到历史提交的commit id
  4. git tag v0.9 6224937对指定commit id是6224937打上标签
  5. git tag -a v0.1 -m "version 0.1 released" 3628164创建带有说明的标签,用-a指定标签名,-m指定说明文字
  6. git show <tagname>可以看到说明文字eg:git show v0.1
  7. git tag -s v0.2 -m "signed version 0.2 released" fec145a签名采用PGP签名,因此,必须首先安装gpg(GnuPG),如果没有找到gpg,或者没有gpg密钥对,就会报错
  8. git tag -d v0.1标签打错了,删除
  9. git push origin <tagname>推送某个标签到远程eg:git push origin v1.0git push origin --tags一次性推送全部尚未推送到远程的本地标签
  10. git push origin :refs/tags/<tagname>可以删除一个远程标签(先删除本地的:git tag -d v0.9) eg:git push origin :refs/tags/v0.9
上一篇下一篇

猜你喜欢

热点阅读