Git使用小结
一、Git 安装
在官网下载Git,默认步骤安装即可。然后使用以下命令配置用户名和邮箱
git config --global user.name "aaxu"
git config --global user.email "1348887832@qq.com"
二、Git介绍
Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库
功能概述
- 可以回滚到之前的代码版本
- 留下修改记录
- 可以方便的管理不同的版本
工作区和暂存区
工作区:与".git"同目录下的其他文件或目录
.git文件夹:这是版本库
Git的版本库里存了很多东西,其中的index称为暂存区
如下图所示:
三、Git常用命令
1.添加文件到暂存区
git add hello.txt
2.将暂存区文件放到本地仓库
git commit -m "message"
3.查看工作目录状态
git status
4.修改文件后,需要重新add,然后commit
即:修改-->git add ,第二次修改--->git add--->git commit
5.版本回退
在Git中,用HEAD表示当前版本,也就是最新的提交,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
比如:新添加了一个文件,提交了。然后想回退上一版本(添加前)
git reset --hard HEAD^
如果想撤销这一回退,需要查看上次commit的ID,前几位即可
然后再使用reset命令
git reset --hard 03efe
6.查看工作区和版本库里面的区别
git diff HEAD -- ui.txt
7.撤销修改,有2种情况
git checkout -- "ui.txt"
1.一种是ui.txt修改后还未放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
2.一种是ui.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总结:就是让这个文件回到最近一次的git add或git commit的状态
git reset #git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。
8.删除文件
直接删除已经提交的文件,会造成版本库和工作目录不一致
使用
git status 可以知道哪些被删除了
8.1 如果要从版本库删除该文件,使用
git rm , 然后
git commit
8.2 误删工作区文件,从版本库恢复该文件的最新版本
git checkout -- aaa.txt
需要注意:从来没有被添加到版本库就被删除的文件,是无法恢复的!
远程仓库命令:
注册Gitee,然后上传自己的公钥
1.先生成公钥
ssh-keygen -t rsa
2.执行命令完成后,本地用户.ssh目录生成如下名称的公钥和私钥:-
3.然后创建一个Gitee仓库,建立关联
1.本地仓库和远程仓库建立关联,就可以把本地仓库文件推送到远程
git remote add origin git@gitee.com:Nan_Nan_chang/test2.git
2.推送master分支的所有内容到远程origin
git push -u origin master
3.每次本地提交后,就可以推送最新修改到远程
4. 拉取远程仓库
git pull origin master
克隆一个仓库
git clone https://gitee.com/Nan_Nan_chang/test2.git
分支管理命令
创建,合并,删除
1.创建dev分支,然后切换到dev分支:
git checkout -b dev # -b表示切换
相当于:
$ git branch dev # 列出所有分支,当前分支前面会标一个*号。
$ git checkout dev # 切换到dev分支
2.合并分支.[假设当前位于master分支]
git merge dev # 合并dev分支到master分支
3.删除dev分支
git branch -d dev
#--------------------------------------------------------
#-------------------------------------------------------
使用switch切换分支
1.创建dev分支,然后切换到dev分支:
git switch -c dev
2.切换到已有分支
git switch master
分支的策略:
总结:拉取dev分支,我们自己再创建分支(比如demo),并在上面进行作业。不断的往dev分支上合并就可以了
标签的使用:
1.新建标签
# 默认是是打在最新提交的commit上的
git tag v1.0
2. 如果想打在之前的commit上
可以这样:
2.1--先找到历史提交的commit id,然后打上
$ git log --pretty=oneline --abbrev-commit
26a1ab3 (HEAD -> dev, tag: v1.0) 添加in_dev.txt
7b5e01a 添加一个hello.txt
5610694 (origin/master) add aaa.txt
03efe94 append hello
37cbd4e add dispaly
d8c1a17 write a file
2.2--然后:$ git tag v0.9 03efe
为“append hello"打标签
3. 查看所有标签
git tag
4. 删除标签(创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除。)
git tag -d v1.0
5.可以推送一个本地标签
git push origin <tagname>
6.推送全部未推送过的本地标签
git push origin --tags
7.删除一个远程标签
git push origin :refs/tags/<tagname>
四、下载安装sourcetree
地址:https://www.sourcetreeapp.com/
默认步骤安装即可
sourcetree使用
1.将一个已经是git仓库拖到窗口即可
2.点击“工具”->“选项”添加ssh密钥,即可从远程进行拉取或者推送
3.切换分支,只需双击某分支即可
个人记录,如有误差,请见谅