其他操作
git init
:初始化本地库
git status
:查看工作区、暂存区的状态
git add <file name>
:将工作区的“新建/修改”添加到暂存区
git rm --cached <file name>
:移除暂存区的修改 git提交时忽略指定文件
git commit -m "提交日志" <file name>
:文件从暂存区到本地库
git update-index --assume-unchanged "file path"
:git关闭跟踪文件修改提交
git update-index --no-assume-unchanged "file path"
:git打开跟踪文件修改提交
日志
git log
:查看历史提交(tip:空格向下翻页,b向上翻页,q退出)
git log --pretty=oneline
:以漂亮的一行显示,包含全部哈希索引值
git log --oneline
:以简洁的一行显示,包含简洁哈希索引值
git reflog
:以简洁的一行显示,包含简洁哈希索引值,同时显示移动到某个历史版本所需的步数
版本控制
git reset --hard 简洁/完整哈希索引值
:回到指定哈希值所对应的版本
git reset --hard HEAD
:强制工作区、暂存区、本地库为当前HEAD指针所在的版本
git reset --hard HEAD^
:后退一个版本(tip:一个^表示回退一个版本)
git reset --hard HEAD~1
:后退一个版本(tip:波浪线~后面的数字表示后退几个版本)
强制提交到XX分支
git push -f -u origin <分支名>
比较差异
git diff
:比较工作区和暂存区的所有文件差异
分支操作
git branch -v
:查看所有分支
git branch -d <分支名>
:删除本地分支
git branch <分支名>
:新建分支
git checkout <分支名>
:切换分支
git checkout .
:撤销本地分支所有修改
git merge <被合并分支名>
:合并分支
本地库跟远程库交互
git clone <远程库地址>
:克隆远程库
git remote -v
:查看远程库地址别名
git remote add <别名> <远程库地址>
:新建远程库地址别名
git remote rm <别名>
:删除本地中远程库别名
git push <别名> <分支名>
:本地库某个分支推送到远程库,分支必须指定
git pull <别名> <分支名>
:把远程库的修改拉取到本地
git fetch <远程库别名> <远程库分支名>
:抓取远程库的指定分支到本地,但没有合并
git merge <远程库别名/远程库分支名>
:将抓取下来的远程的分支,跟当前所在分支进行合并
git fork
:复制远程库
修改远程仓库地址
方法一:
1.修改命令
git remote origin set-url [远程库地址]
2.先删后加
git remote rm origin
git remote add origin [远程库地址]
清除git仓库的所有提交记录
操作步骤:
1) 创建新分支
git checkout --orphan newBranch
-
添加所有文件(除了.gitignore中声明排除的)
git add -A
-
提交跟踪过的文件(Commit the changes)
git commit -m “init commit”
-
删除master分支
git branch -D master
-
重命名当前分支为master
git branch -m master
-
重新指定远端
git remote set-url origin [远程库地址]
-
强制提交到远程master分支
git push -f origin master
通过以上几步就可以简单地把一个Git仓库的历史提交记录清除掉了