Initialized empty Git repository in E:/gitwork/管理系统/.git/
$ git commit -m "管理系统前端1.1.0" [master (root-commit) 705455b] 管理系统前端1.1.0 4 files changed, 11305 insertions(+) create mode 100644 web/index.html create mode 100644 web/jquery.js create mode 100644 web/login.html create mode 100644 web/signin.html
commit 705455b0775e1b60789a4979e4ac2a0a8ceba8bf (HEAD -> master) Author: pengcheng <123456789@qq.com> Date: Tue Apr 19 14:55:10 2022 +0800 管理系统前端1.1.0
当我们修改下内容再次添加到历史区,再次查看时会有两个版本号
$ git log
commit 01f2ca96460d8dde3718f72c1c66087280fcbfc2 (HEAD -> master) Author: pengcheng <123456789@qq.com> Date: Tue Apr 19 15:15:00 2022 +0800 提交后端路由模块1.1.0 commit 705455b0775e1b60789a4979e4ac2a0a8ceba8bf Author: pengcheng <123456789@qq.com> Date: Tue Apr 19 14:55:10 2022 +0800 管理系统前端1.1.0
$ git reset --hard 版本号进行历史回退
$ git reset --hard 705455b0775e1b60789a4979e4ac2a0a8ceba8bf HEAD is now at 705455b 管理系统前端1.1.0
$ git reset --hard HEAD ^回退到相邻上一个版本
$ git reset --hard HEAD~100回退到之前的第100个版本
$ git status
On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
deleted: router/user.js
deleted: router/userinfo.js
Untracked files:
(use "git add <file>..." to include in what will be committed)
.gitignore
app.js
db/
router-handler/
schema/
web.js
$ git reset HEAD router
Unstaged changes after reset:
D router/user.js
D router/userinfo.js
$ git checkout router
Updated 2 paths from the index
语法 | 含义 |
---|---|
target | 忽略这个target目录 |
angular.json | 忽略这个angular.json文件 |
log | 忽略log下的所有文件 |
css/*.css | 忽略css目录下的.css文件 |
git远程库有很多,github由于服务器在国外,网速慢,推荐使用gitee
地址:https://gitee.com
$ git checkout login
Switched to branch 'login'
19009@▒▒▒▒ MINGW64 /e/gitwork/管理系统 (login)
$ git branch
* login
master
切换回 dev 开发分支
$ git checkout dev
将远程中央仓库中 dev 分支的最新版本拉取到本地
$ git pull origin dev
切换回自己的分支:
$ git checkout my
变基(改变基准分支,将最新的 dev 分支合并到当前分支来)
$ git rebase dev
如果变基失败(报错)则说明不能自动解决所有冲突问题,需要手动解决冲突
查看冲突文件:
$ git status
手动解决冲突后,将已解决冲突文件添加到暂存区:
$ git add -A
继续变基:
$ git rebase --continue
如果进入编辑提交版本信息的界面(vim编辑器界面),可按 I 键进行插入编辑。要退出编辑器界面,按 Esc 然后输入 :wq 保存并退出。
如果在分支名称后还有 |REBASE 1/1 这类似的提示信息,则继续按照上述变基步骤处理(从5步开始继续变基)
解决完冲突后,继续将自己的分支推送到远程中央仓库,提交 PR。如果本地自己分支与远程自己的分支存在冲突不能推送,可删除远程自己的分支再推送。