前言
作者:Linus
作品:
Linux
Git
一 单分支
1 操作命令
cd ~ //返回上一级目录
pwd //查看当前用户
cd - //回到刚才的目录
cd xx //进入某个目录
mkdir xx //创建一个目录
touch xxx.java //一个.java文件
cat xxx //查看某文件内容
echo "xx" >>|> yy //>>追加填写xx内容至yy文件 >覆盖原有内容
ll //显示版本库的文件
2 主要命令
添
git init //初始化仓库
git status //查看暂存区和缓存区的文件
git add filename/. //工作区到暂存区 .表示添加暂存区中所有文件
git commit -m "xx" //暂存区文件到本地仓库
git commit -am "xx" //跳过add 直接commit至版本库
git remote add origin xx //连接远程库
git remote -v //查看本地仓库所连接的远程库
git push -u origin 分支 //提交本体仓库文件至远程库
拉
git pull origin 分支 //远程库的分支和本地库的分支合并
git clone //第一次拉取代码
git fetch origin 分支 //拉取分支
git merge origin 分支 //合并分支
git pull origin 分支 //fetch+merge
改
3.1删除or撤销
git rm xxx //删除版本库文件
git mv xxx yyy //重命名版本库中的文件xxx->yyy
git checkout xxx //撤销工作区对xxx修改
git reset HEAD 文件 //撤销暂存区修改
git restore --staged 文件 //撤销暂存区修改
3.2 diff
git diff --cached <文件..> //比较暂存区和版本库差异
git diff --staged <文件..> //比较暂存区和版本库差异
git diff HEAD <文件..> //比较工作区和版本库的差异
git diff <文件..> //比较工作区和暂存区的差异
3.3回退版本
git log //查看版本
git log --oneline //一行查看所有版本
git reflog //查看包括回退的所有版本
git reflog --oneline //~
git reset hard <commit> //回退至<commit>版本 三个区同步回退or前进(比较危险)
git reset soft <commit> //只有版本库回退
git reset mixed <commit> //只有工作区不回退
全局命令
git config --global user.name "your name"
git config --global user.email "youremail@163.com"
局部级别
git config --locall user.name "yourname"
git config --locall user.email "youremail@163.com"
系统级别
git config --system user.name "yourname"
git config --system user.email "youremail@163.com"
二 分支
git branch //查看所有分支
git branch xxx //创建分支
git checkout xxx //切换分支到xxx
git merge xxx //合并xxx分支到当前分支
git checkout -b xxx //创建并选中xxx分支
git branch -d xxx //删除xxx分支
git branch -av //显示包括远程库的所有分支
git rebase
git rebase -i <commit> //修改之前提交的信息
git rebase -i HEAD~x/HEAD^^ //合并版本
git rebase 分支 //合并分支 一条直线