简介:
git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
最初是 Linus 为了管理 Linux 内核开发而开发的一个开源的版本控制软件。
git和svn的区别:
集中式:svn,各个版本存于服务器,易单点故障
分布式:git,能有效解决单点故障,C语言开发
git操作
1.初始化本地仓库或者克隆远程仓库
git init | git clone url
2.设置用户签名
git config --global user.name “jack” git config --global user.email "123@qq.cpm"
3.查看当前工作区、暂存区状态
git status
4.提交版本
将所有文件增加到暂存区 git add .
将一个文件增加到暂存区 git add test.txt
提交版本到本地仓库 git commit -m "版本号或者描述信息"
5.查看日志
git log
日志过长时,按行显示 git log --oneline
6.版本回退
git reset --hard HEAD^ # 回退到当前版本的前一个版本 HEAD^^表示回退到当前版本的前两个版本
git reset --hard HEAD`1 # 回退到当前版本的前一个版本 HEAD`5表示回退到当前版本的前5个版本
git reset --hard 版本号序号 # 回退到指定的版本
7.撤销工作区的修改
git checkout -- <文件名>
8.撤销暂存区的修改
git reset HEAD <文件名> # 先撤消暂存区的修改,从暂存区撤回
git checkout -- <文件名> # 再撤消工作区修改
9.对比文件内容
对比本地仓库(HEAD) 与工作区文件的差异
git diff HEAD -- <文件名>
10.对比两个版本之间某个文件的不同
git diff HEAD HEAD^ -- <文件名>
11.删除文件
rm <文件名>
12.git 分支
1.查看分支 git branch -v
2.创建分支
# 创建分支,不切换
git branch <分支名>
# 切换分支
git switch <分支名>
or
git checkout <分支名>
# 创建分支,并切换
git checkout -b <分支名>
# 创建dev分支,并切换
git checkout -b dev
3.合并分支到主分支
# 1. 切换到主分支
git checkout master
# 2. 合并分支dev 到主分支
git merge dev
4.删除分支
# 删除一个分支
git branch -d <分支名>
# 删除dev分支
git branch -d dev
5.查看合并后的日志
git log --pretty=oneline
1、创建并切换到分支,git checkout -b dev
2、在dev分支下创建新的文件,并commit
3、切换到master分支,修改原文件,并commit
4、合并dev分支,git自动创建一次commit,输入commit说明,并使用vim方法退出
推送仓库
查看远程仓库
git remote -v
#添加远程仓库
git remote add origin url # url为复制的远程仓库https地址
推送代码
git push origin master