已经提交到仓库(本地和远程仓库)的内容利用IDEA回退到原来指定版本
Revert操作:Revert操作会当成一个新的提交记录,追加到提交日志当中,这样便保留了原来的提交记录。
在想要回退历史版本上单击鼠标右键
如果有冲突,双击冲突文件查看冲突,并解决
回退后重新提交,可以同时 push 到远程仓库
这种回退的好处在于,如果后悔了“回退”这个操作,也可以回退到没有回退之前的版本,因为历史记录还保留提交记录,
利用IDEA的Reset Head指针:Reset Head指针,会抛弃原来的提交记录,使Head指针强制指向指定的版本。
在想要回退历史版本上单击鼠标右键
1、soft
①移动本地库HEAD指针
意思就是,回滚后,仅仅是把本地库的指针移动了,而暂存区和你本地的代码是没有做任何改变的。
而你上次改动已提交到本地库的代码显示是绿色,即未提交
2、mixed
①移动本地库HEAD指针
②重置暂存区
意思就是,回滚后,不仅移动了本地库的指针,同时暂存区的东西也没了,意思就是你上次添加到暂存区的文件没了
3、hard
①移动本地库HEAD指针
②重置暂存区
③重置工作区
意思就是,回滚后,本地代码就是你回退版本的代码
4、keep
①移动本地库HEAD指针
②重置工作区
意思就是,回滚后,本地代码就是你回退版本的代码,暂存区的文件依然保存。
此时本地仓库回退了,但远程仓库还没有,push到远程仓库,会提示拒绝,但不能和远程仓库合并,因为合并就达不到回退的目的了
打开Terminal,在本项目目录下,输入git push -f 强制同步远程仓库。
同步后,会发现,git日志丢失了“第二次提交”以后的提交记录。
原文:https://www.cnblogs.com/roadlandscape/p/12359791.html
创建tag指向提交记录指针:
-
创建tag
git tag V1 -m “备注”
git push origin V1 -
删除
git tag -d V1
git push origin :refs/tags/V1
新项目提交注意:
1、如远程仓库有文件存在,需要先同步到本地在提交。未同步文件会触发:Push rejected: Push to origin/master was rejected 错误
2、本地创建git仓库:create git repository
3、配置远程git仓库地址:git-》repository-》remotes
4、右键GIT BASH或Idea中使用Alt+F12打开命令窗口执行:git pull origin master --allow-unrelated-histories
5、出现类似于这种信息就说明pull成功了:
From https://github.com/danishlyy/HappyBirthday
- branch master -> FETCH_HEAD
Merge made by the ‘recursive’ strategy.
README.md | 2 ++
1 file changed, 2 insertions(+)
create mode 100644 README.md
6、准备第一次远程推送