我们在修改文件之前一定要用gitcheckout XXX切换到我们要修改的分支。修改之后,我们通过以下步骤提交修改
1)gitpull origin master
2)gitstatus查看自己在分支上的修改文件/显示工作区状态。
3)gitdiff路径名 查看改了哪些文件.
4)gitadd路径名 添加需要提交的文件。
5)gitcommit -m"修改说明" 添加修改注释。""与注释之间不能有空格
6)gitpush origin master提交主分支到服务器。包括提交主分支和其他分支,提交其他分支的修改,只要在xxx分支下执行git push origin 分支名。
提交之前git pull然后对比代码
7)git log查看本地git上传日志/显示提交日志
git reset --hard HEAD把你工作目录中所有未提交的内容清空
git reset --hard commitid //本地代码回到指定的commitid
git push -f origin branchname //git服务器代码回到指定的commitid
git push -f -u origin branchname
git reset HEAD恢复本地提交
git reset路径名 撤销add时多添加的文件
git clean -df清除未跟踪的文件
git show commit号 显示某个提交的详细内容
git pull --rebase origin分支名 更新到与服务器同步
git checkout -- .使当前commit本地代码与服务器代码一致(取消本地所有的修改)
git checkout . (注意最后的点)来删除本地所有未提交的修改
git checkout HEAD .清除工作区和暂存区中未提交的改动
git checkout HEAD文件路径 清除工作区和暂存区中未提交的改动
git status查看当前分支状态
git status路径
git add添加所有需要提交的文件/添加文件内容至索引
git add .将所有修改过的工作文件提交暂存区.很少用此命令
git add -u只会处理已修改或者已删除的文件,但是不会处理新建的文件
git clean -nxfd会删掉哪些文件,防止重要文件被误删
git clean -xfd一般这个是用来删掉编译出来
git branch dddd建立本地分支ddd
git branch–D xxx 删除xxx分支 xxxxxx 删除某个文件
git branch查看当前是属于哪个分支,假如是puppis 分支
git blame文件名 会显示每一行最后一次改动
git push origin puppis提交到puppis分支的远程服务器
git branch -r显示所有远程分支
git branch显示本地所有分支
git commit -m"注释说明" 添加提交说明
git checkout -f要恢复的文件 这样就可以恢复到和服务器一样
git checkout -- file可以丢弃工作区中文件尚未提交的修改
git checkout aa切换到aa分支上
git cherry-pick -x commit号
当其他分支有改过的bug,而你的分支也需要的时候,就可以直接摘过来,就不需要重新改。
git reset commit号
这个就是删掉本地分支上commit号之后的所有提交 ,最后如果要上传服务器,还需要push上去
git revert commit号
这个就是删除本地分支上commit号的该条提交,最后如果要上传服务器,还需要push上去
git reset commit号 --hard
这个是删除本地分支上得最后一个提交,这个提交只是本地提交,是指没有push到服务器上的。
git revert用于反转提交,执行evert命令时要求工作树必须是干净的.
rm文件名或路径名 从工作区和索引中删除文件
git rm test1从服务器上删除test1文件
git mv string.c operations.c重命名
git checkout HEAD~1 -- test1恢复删除的文件
git config --list看所有用户
git config --global user.name输出用户名称:zhangsan
git branch -r --contains commit号 查看某一个commit属于哪个branch
git clean清除工作区未跟踪文件
git grep "delete from"文件中搜索文本“delete from”
git log -1 #显示1行日志 -n为n行
git log >>gitLog.txt把日志输出到根目录
git log -S"string"可以根据修改内容查找commit
git log -p [file]显示指定文件是什么人在什么时间修改过
git log --author=xxxx --since=2016-9-01--until=2016-9-05
查看某个人某天提交的代码
git log --author=xxxx查看某个人提交的代码
git log --stat可以看到每次提交的文件变更统计
git log --pretty=format:'%h %s' --graph图示提交日志
git log --graph --oneline查询到最新提交到的ID
git log --pretty=oneline文件名 列出文件的所有改动历史
git shortlog log排序
git --version查看版本/git version 1.9.1
git version gitversion 1.9.1
diff -u file2.c file.c > diff.c比较两个文本文件差异
cp file.c file2.c用file.c把file2.c的文件内容覆盖
git stash对当前的暂存区和工作区状态进行保存
git status -s显示精简格式的状态输出
git rev-parse --git-dir显示版本库.git目录所在的位置
git rev-parse --show-toplevel显示工作区根目录
git diff HEAD将工作区和HEAD(当前工作分支)相比
git ls-tree -l HEAD查看各文件大小
git write-tree xargs git ls-tree -l -r -t递归操作显示目录树及文件大小
touch uuu.txt新建一个uuu.txt文本文件
git stash clear删除所有存储的进度
git reflog
git remote -v查看远程服务器地址和仓库名称
git remote show origin看远程服务器仓库状态
git help帮助
git remote prune origin清除已删除远程分支
如果在b1分支下checkout,即:
git checkout b1 //进入master分支
git checkout -b fromb1 //以b1为源创建分支fromb1
删除远程分支和tag
git push origin --delete
git push origin :
git fetch origin
感谢大家加一下微信.谢谢
感谢转发
领取专属 10元无门槛券
私享最新 技术干货