抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

git的操作流

创建工程->写代码->上传代码到仓库->修改代码->上传代码
测试新想法->创建分支
出现问题->回滚

初始化新仓库并创建账户

git init
git config --global user.name "elf"
git config --global user.name "elf@elf.com"

执行init命令后会在当前目录下创建.git文件夹。首次使用会提示输用户名和用户邮箱

版本修改

暂存区修改

git add 文件名
git rm 文件名

提交

git commit -m “版本名”

回退

git reset
git reset --hard [版本名]  //--hard:撤销所有未提交的修改

清除未提交的修改

git checkout [文件名]  //未提交到暂存区
git reset HEAD -- [文件名]  //撤回提交到暂存区的文件

分支操作

分支查看

git branch //*为当前所在分支

分支创建

git checkout -b 分支名

分支切换

git checkout 分支名

分支删除

git checkout -d 分支名

分支重命名

git checkout -m 原分支名 新分支名

patch操作

patch记录了两次commit之间对文件进行的修改
patch生成

git format-patch HEAD^ //生成最近1次commit的patch
git format-patch HEAD^^^^ //生成最近4次commit的patch
git format-patch -1 <r1> //生成<r1>这个 commit 的 patch
git format-patch <r1> //生成<r1>这个commit以后的修改patch,不包含该 commit
git format-patch --root <r1> //生成从根到r1所有patch

patch检查

git apply --stat xxx.patch //查看patch情况
git apple --check xxx.patch //检查patch是否能打入,若能,不输出任何信息

patch打入

git am XXX.patch //打入patch
git am --signoff XXX.patch //打入patch并添加署名
git am -s XXX.patch //同上
git am ~/patch-set/*.patch //将patch-set路径内所有patch按先后顺序打入

文件对比

git diff //同分支下工作区和暂存区对比
git diff 分支1 分支2 //两个分支文件对比
git diff 分支1 分支2 文件路径

状态检查

查看工作区状态

git status

查看提交日志

git log

查看分支

git branch

检查某次提交

git show //检查最近一次提交修改的内容
git show [版本名] [文件名]

评论