技术

·

2 min read

·

- Views

Git相关问题记录

Copied

Git相关问题记录

Q: 如果从master上拉了feat分支,在你开发过程中master上合并了一些别的feat分支,此时希望将master的更改 同步到feat上,如何操作?

A: merge或者rebase都可以,但是推荐rebase。因为merge会产生一个Merge branch ‘master’ into featcommit,这样会导致最后你的feat上线时往master上合时,如果没有使用squash来压缩commit记录的话,就会存在这些无用的commit记录,导致commit历史不干净。

Q: git rebase orgin/mastergit rebase origin master的区别

A: 正常更新master的更改应该使用git rebase orgin/master,后者意义不同,git rebase base [your branch],因此如果打错成后者,则会在你的分支上部署master,不再是我们想要的结果,甚至会有conflict

Q: 配置代理🪜

端口注意改为代理端口, 一般工具里会写,例如v2ray10809clash一般是7890

A:

全局代理

但是一般电脑上不止一个项目, 公司项目就需要内网

因此可以设置局部代理

取消代理

Q: 配置别名

A:

有时候想 checkout -b 、 cherry-pick这种命令很长时,希望简化一下命令。

方法一: 命令行

这样配置之后 只需要执行 git c -m ‘feat:xxx’ 就能提交

如果想进一步简化呢 比如把 -m 简化掉。

那么就需要设置参数

其中echo部分必须有,不然会报错。

这样配置后 只需要执行 git c ‘feat:xxx’ 即可。

方法二:找到系统中的.gitconfig文件

一般是在root下,有一个隐藏文件.gitconfig

打开后设置[alias]即可

❗注意 cm这里是\"$1"\,因为Message 可能会包含空格,因此需要将其作为一个字符串,否则会被shell解析为空格隔开的参数