git问题汇总

本文记录使用git的过程中遇到的一些问题及解决方案。首先附上git的使用帮助信息:

git 的帮助信息

git --help
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
用法:git [-v | --version] [--help] [-C <路径>] [-c <名称>=<取值>]
[--exec-path[=<路径>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<路径>] [--work-tree=<路径>] [--namespace=<名称>]
[--super-prefix=<路径>] [--config-env=<名称>=<环境变量>]
<命令> [<参数>]

这些是各种场合常见的 Git 命令:

开始一个工作区(参见:git help tutorial)
clone 克隆仓库到一个新目录
init 创建一个空的 Git 仓库或重新初始化一个已存在的仓库

在当前变更上工作(参见:git help everyday)
add 添加文件内容至索引
mv 移动或重命名一个文件、目录或符号链接
restore 恢复工作区文件
rm 从工作区和索引中删除文件

检查历史和状态(参见:git help revisions)
bisect 通过二分查找定位引入 bug 的提交
diff 显示提交之间、提交和工作区之间等的差异
grep 输出和模式匹配的行
log 显示提交日志
show 显示各种类型的对象
status 显示工作区状态

扩展、标记和调校您的历史记录
branch 列出、创建或删除分支
commit 记录变更到仓库
merge 合并两个或更多开发历史
rebase 在另一个分支上重新应用提交
reset 重置当前 HEAD 到指定状态
switch 切换分支
tag 创建、列出、删除或校验一个 GPG 签名的标签对象

协同(参见:git help workflows)
fetch 从另外一个仓库下载对象和引用
pull 获取并整合另外的仓库或一个本地分支
push 更新远程引用和相关的对象

命令 'git help -a' 和 'git help -g' 显示可用的子命令和一些概念帮助。
查看 'git help <命令>' 或 'git help <概念>' 以获取给定子命令或概念的
帮助。
有关系统的概述,查看 'git help git'。

问题汇总

git pull的时候:您对下列文件的本地修改将被合并操作覆盖,请在合并前提交或贮藏您的修改。 正在终止

发生这种情况一般都是由于别人修改了文件并提交了push,你没有pull别人修改的代码你也修改了同一个文件

解决方法一:

1
git reset --hard

使用上述命令舍掉你对本地文件的修改,之后再进行pull命令就没有问题了,之后在本地文件内修改再进行提交文件就可以了。

解决方法二

1
git stash

保留你的文件的修改,将所有未提交的修改保存在堆栈中,在使用pull命令时就没有报错了,已经拉取下来的代码然后再将当前stash中的内容弹出,并应用在当前分支对应的工作目录上。

1
git stash pop

这个时候本地文件可能会有冲突,如果有冲突需要你手动解决一下然后再去提交代码然后再正常进行你的操作提交代码等。