一、 强制下拉并覆盖本地分支
git fetch --all
git reset --hard origin/branch-name
git pull
注:第二行中
git reset --hard origin/branch-name
中branch-name
是你要覆盖的本地分支名
原文献地址:Git pull 强制拉取并覆盖本地代码
二、提交代码到远程仓库
// 下拉服务器diamante,避免覆盖他人代码(这个很重要!!!)
git pull
// 查看当前项目中有哪些文件被修改过
git status
// 将所有修改的文件提交到缓存区
git add .
// 代码提交到本地仓库(记住是本地仓库)
git commit -m ' 修改项目代码 '
// 将缓存区代码推送到Git服务器
git push
原文献地址:Git利用命令行提交代码步骤
三、覆盖分支(rebase)
- 若本地分支覆盖本地分支
git reset --hard commit-SHA
**
commit-SHA
**: 具体是的是提交的编码号,如下图:
图1 commit-SHA
- 若远程分支覆盖本地分支
git reset --hard origin/master // 这里是使用master仓库的内容覆盖本地分支
master
:可以更换为任意想要合并的仓库名,比如图1中的dev-test
仓库名
即:git reset --hard origin/dev-test
四、分支
- 创建本地分支
git branch <name-branch>
- 切换分支
git checkout <name-branch>
五、合并分支
合并本地分支时,需要将两分支进行提交缓存:
git commit -m
合并分支方法:
git merge <name-branch>
将
name-branch
分支合并到当前分支
图2 合并时分支冲突
如图2,在分支合并时,会存在分支冲突,此时需要我们进行删除
其中,
<<<<<<< HEAD
- =======
:冲突中本分支的内容
=======
- <<<<<<< dev-test
:冲突中合并分支的内容,此图中为<dev-test>分支
删除完冲突分支后记得提交对应的代码,及git commit -m
即可完成冲突后的分支合并
六、git命令行退出
git log
退出
如果commit(提交)比较多,git log的内容就会比较多;当满屏放不瞎,就会显示冒号,
回车(往下翻一行)
、空格(往下翻一页)
:继续查看剩余内容;
英文状态下,按q
可以退出git log
状态git commit
当该命名没有带-m
参数时,会跳出commit change log (COMMIT-EDITMSG)
界面(如图3所示),这个是vi编辑器,和Linux的使用时一样的,因为涉及到是否要保存编辑内容,所以退出命令有多种。
图3 `commit change log (COMMIT-EDITMSG)`界面
- 保存并退出
- 按
Esc
键退出编辑模式,英文模式输入:wq
,然后回车(write and quit) - 按
Esc
键退出编辑模式,大写模式输入:ZZ
,然后回车
- 不保存退出
- 按
Esc
键退出编辑模式,英文模式输入:q!
,然后回车 - 按
Esc
键退出编辑模式,英文模式输入:qa!
,然后回车