前言
本文是有关于Git的学习笔记
提示:以下是本篇文章正文内容,下面案例可供参考
一、Git是什么?
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
二、操作步骤
1.安装Git
在Windows上使用Git,可以从Git官网直接下载安装程序,然后按默认选项安装即可。
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!
安装完成后需要打开Git bash在命令输入命令设置用户名和Email地址。
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
2.创建版本库
第一步:创建一个空目录
$ mkdir learngit //创建文件夹
$ cd learngit //进入创建目录
$ pwd //查询当前路径(返回信息为当前路径)
第二步:通过git init命令把这个目录变成Git可以管理的仓库
$ git init
3.工作区、暂存区、版本库概念
- 工作区:就是你在电脑里能看到的目录。
- 暂存区:英文叫 stage 或 index。一般存放在 .git 目录下的 index
文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。 - 版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库。
4.常用命令
将文件添加到暂存区
1.将文件添加到暂存区
git add [file1]
2.将指定目录添加到暂存区
git add [dir]
将暂存区的内容提交到仓库
git commit -m [message] //[message]为备注信息
//提交暂存区的指定文件到仓库区:
git commit [file1] [file2] ... -m [message]
版本回退
git reset --hard HEAD^ //HEAD^代表上一个版本 HEAD^代表上上个版本 HEAD~100代表以前第100个版本
git reset --hard commit_id //commit_id为版本号,可通过git reflog查询
比较文件不同(可用于查询修改)
git diff [file]
查看历史提交记录
git diff [file]
删除文件
git rm file //可直接删除工作区文件,如果之前使用rm file了,则使用该命令意味着从版本库确认删除
添加远程仓库
由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,需要创建SSH KEY
$ ssh-keygen -t rsa -C "youremail@example.com" //创建SSH KEY
创建完成后,用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去id_rsa.pub是公钥。
登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
在GitHub上添加远程库(略)
将GitHub上的仓库与本地仓库关联
git remote add origin git@github.com:[gitaccount]/learngit.git
//将gitaccount替换成自己GitHub账号
第一次推送master分支
git push -u origin master//第一次推送要加 -u 参数 以后推送就不需要
git remote rm origin //删除关联
克隆远程仓库
git clone git@github.com:[gitaccount]/gitskills.git
分支管理
1、新建分支:
git checkout -b dev //-b参数 表示创建并切换
#相当于以下两条命令:
$ git branch dev #创建分支
$ git checkout dev #切换分支
#查看分支
$ git branch
//返回信息带*号的为当前所在分支
#合并分支
git merge [name](指定分支名)
#删除分支
git branch -d dev
#切换分支
git checkout<name> git switch <name>
Bug分支
$ git stash #保存现场
#随后可以切换到有bug的分支上,创建新的分支以修改bug,最后提交同步。
$ git stash list #查看保存的工作现场
#恢复现场的方法:一是:
$ git stash apply #恢复后,stash内容并不删除
$ git stash drop #删除stash内容
$ git stash apply stash@{0} #修改指定的stash
#另一种方式是:
$ git stash pop #恢复的同时把stash内容也删了
标签管理
$ git tag <name> #在当前版本[commit id]打上新的标签
$ git tag <name> <commit id>
查看标签
$ git tag //查看所有标签
$ git show <tagname> //查看标签名
$ git tag -a <tagname> -m "version 0.1 released" <commit id> //创建带有说明的标签,用-a指定标签名,-m指定说明文字