git是非常方便的版本管理软件,由大名鼎鼎的利纳斯开放。
一、安装git
ubuntu使用git 首先安装git
sudo apt install git
非常方便,软件很下,安装很快。
二、git基本命令
先创建一个目录
mkdir testgit
cd testgit
git init #初始化目录
ls -al #可以看到目录下面多了一个隐藏文件夹.git
touch first.txt
git status #查看当前状态,会提示有没有跟踪到的文件
git add first.txt #把文件放入缓存区
git commit -m "第一个版本" #提交更新,-m后面是版本说明信息
基本命令4个哦,简单吧,先把这4个命令记牢了
三、git的日志命令
git log #显示git使用日志信息,所有的提交信息、
git log --graph --pretty=oneline #每一条日志用图表优雅的显示在一行
git reflog #简短日志查看,方便回退
四、git的回退命令
git reset --hard HEAD^ #回退到上一个版本
git reset --hard HEAD^^ #回退到上上一个版本
git reset --hard HEAD~数字,#回退到之前的第几个版本
git reset --hard 短版本号 # 利用git reflog 可以查询之前的版本信息,里面有短版本号,可以直接回退到某个版本号
git reset HEAD~/短版本号 first.txt #把first.txt还原到之前某个版本下的文件
git checkout -- filename #放弃现有更新,把缓存区内,文件释放出来
git rm filename #删除文件,如果直接用rm 删除文件,是无法commit的,虽然文件不见了,但是仍然需要使用git rm 命令再删除一下
五、git 的比对命令
git diff HEAD filename #比对现在文件,和上一个版本的文件,对比,增加的用绿色+表示,删除的用红色-提示
git diff HEAD HEAD~6 filename #对比上一个版本,和之前第6个版本之间,文件的差异
六、git的分支命令
git branch #查看项目所有分支,当前所在分支,前面会有*,绿色标识。系统目录只有一个主分支,master
git checkout -b bname #创建并切换名为bname的分支,
git checkout maste #切换分支,返回主分支
git merge bname #快速合并分支,把bname分支上的 内容,合并到当前分支上
git merge --no-ff -m '版本说明' bname #非fast forward的合并,增加版本说明信息
git branch -d bname #删除分支,删除分支,需要返回创建这个分支的基础分支,否则删除回提示,分支信息还没有合并完
处理合并过成中的文件冲突
git 会在冲突文件中,标出冲突的地方,<<<<<<<<<,==========,>>>>>>>>>>>,处理好冲突内容,让后删除多余的标记信息
然后,再git add 文件名,然后在git commit -m
七、git中临时存储当前未add和commit的内容到隐藏
如果需要临时切换到其他分支,但当前内容还无法add和commit的话,可以存储在隐藏区
git stash #保存当前状态的隐藏区
然后就可以切换到其他分支工作,等完成后,再切换会之前的分支
git stash list #可以查询全部隐藏区域列表
git stash pop #可以取出最后保存的临时状态
在list时,就查询不到了
八、git远程服务器操作
git clone git@github.com:xxusername/prjname.git 从github克隆项目
git push origin 分支名 向服务其他推送更新
git pull origin 分支名 从服务器拉取更新
git branch --set-upstream-to=origin/远程分支名 本地分支名
九、github密钥生成
ssh-keygen -t rsa -C "lan@gmail.com" #输入上面命令回车
十、git用户信息配置
第一次使用时需要配置,git的用户信息
git config --global user.email = "lan@gmail.com" #配置邮箱信息,于sshkey一样
git config --global user.name = "lan" #配置用户名