码迷,mamicode.com
首页 > 其他好文 > 详细

Git

时间:2018-09-16 18:37:38      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:github   命令历史   bubuko   情况   git reset   选择   索引   commit   新版本   

1.Git是什么?

Git是目前世界上最先进的分布式版本控制系统

2,Git的特点

Git和其他版本控制系统之间的一个不同之处就是有暂存区的概念、

技术分享图片

 在使用Git之前,首先我们要有一个属于自己的版本库。创建一个版本库非常简单,选择一个你喜欢的路径,新建一个空目录,或者选择一个已经有东西的目录也是可以的。然后,运行指令 

git  init

这样,一个仓库就创建好了。

 

那接下来我们在里面添加任意文件格式,对文件内容进行修改。

把文件添加到仓库(可多次执行,添加多个文件)

git  add  <文件名>  /  git  add  .

把文件提交到仓库

git  commit  -m  ‘提交说明‘

查看提交历史

git  log

查看当前仓库的状态

git  status

版本回退

git  reset  --hard  HEAD^  /  git  reset  --hard  HEAD~n  /  git reset  --hard  版本号

查看输入的命令历史

git  reflog

查看工作区和版本库中最新版本的区别

git  diff  HEAD  --  <文件名>

丢弃工作区的修改(没执行add之前)

git  checkout  --  <文件名>

撤销暂存区的修改,重新回到工作区(add之后,commit之前)

git  reset  HEAD  <文件名>

删除版本库中的文件,执行

git  rm  <文件名>

再commit 提交到仓库。

 

一般我们的项目都是由项目负责人在GitLub上把项目建好,然后我们直接通过仓库地址clone项目。

从远程仓库clone项目

git  clone  <仓库地址>

clone项目有两种路径一个是通过https,一个是ssh。

二者的区别就是

  • https: git clonegit pull 无限制,git push 需要提供 credential,一般是你的 github 的用户名和密码;
  • ssh:因为需要在托管平台上设置 ssh public key,所以要求你必须是该 仓库 的拥有者或者管理员。git push 时,无需输入用户名,如果在生成 ssh key 的时候设置了密码,则需要输入密码,否则不需要。

怎么生成ssh密钥

技术分享图片

然后把生成的密钥粘贴在下面位置

技术分享图片

然后就可以尽情操作啦!

 

接下来就是Git的特点之一  ----   分支管理

查看分支

git branch

创建分支

git  branch  <分支名>

切换分支

git checkout  <分支名>

创建并切换分支

git  checkout  -b  <分支名>

合并指定分支到当前分支

git merge  <分支名>

删除分支

git  branch  -d  <分支名>

查看分支合并情况

git log  --graph

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

git  stash

恢复工作现场

git  stash  apply

删除stash内容

git  stash  drop

恢复工作现场的同时删除stash内容

 git  stash  pop

查看stash内容

 git  stash  list

恢复指定的stash内容

 git  stash  apply  stash@{索引值}

删除分支

 git  branch  -d  <分支名>

查看远程库的信息

 git  remote  /  git  remote  -v(小写)

 推送分支内容

 git  push  origin  <分支名>

创建远程分支

 git  checkout  -b  <本地分支名>  origin/<远程分支名>

 将本地分支和远程分支连接起来

 git  branch  --set-upstream-to=origin/<远程分支名>  <本地分支名>

 标签管理

创建标签

 git  tag  <标签名>

 查看标签

 git  tag

 给指定的commit打标签

 git  tag  <标签名>  <版本号>

 查看标签信息

 git  show  <标签名>

创建带有说明的标签

 git  tag  -a<标签名>  -m  ‘说明‘  <版本号>

删除标签

 git  tag  -d  <标签名>

推送标签到远程

 git  push  origin  <标签名>  /  git  push  origin  --tags

删除推送到远程的标签

 git  push  origin  :resf/tags/<标签名>

 

Git

标签:github   命令历史   bubuko   情况   git reset   选择   索引   commit   新版本   

原文地址:https://www.cnblogs.com/wangrenmeng/p/9656184.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!