Git学习使用(1)

2020-06-20  本文已影响0人  独爱爱66

工作使用Git,遇到的问题场景:

想要不提交本地的几个文件,比如本地的数据库连接,每个开发人员的本地库连接不同,没必要同步。

区分两种情况

一、该文件未被追踪,是本地新增文件

这种情况也有两种解决办法:

1、创建 .gitignore文件,实现忽略执行文件,例:*.out,out结尾的文件都会忽略add到仓库

通常参考在github上的一个项目就是维护各类语言的忽略文件。直接到github,搜索gitignore即可

2、在本地仓库的.git/info/exclude文件中,添加想忽略的文件,同上

这两种方法是实现效果是一样的,区别在于,.gitignore文件是需要上传到远程仓库,团队的其他

开发人员需要下载这个文件遵循对应的忽略规则,而本地的exclude则不需要上传到远程仓库,

可以只对本地仓库中新增的想要忽略的文件去执行。两者共同点都是忽略未被track的文件

二、该文件已经被上传到远程仓库,是已经被追踪的文件(我遇到的问题是这种情况)

git update-index --skip-worktree  mall-admin/src/main/resources/application-dev.yml

上述命令实现对本地已经被追踪的指定文件,在commit时执行忽略

git ls-files -v | grep ^S,可以通过该命令查看别手动忽略的文件清单:

忽略指定文件操作

该方法确实可以很好的解决本地改动的文件不上传问题,明确这个命令不会影响线上,

仅是本地操作,但当切换分支时,会提示有未提交的变更记录,禁止切换分支,报error。

切换分支error

git stash 此时又需要使用它来解决这个问题,该命令是会暂存工作区内容,将数据存在缓存,

切换分支修改完毕后,切换原分支。

第一步:git update-index --no-skip-worktree  mall-admin/src/main/resources/application-dev.yml

将原本忽略的文件恢复正常。

第二步:执行git stash

第三步:切换到想去分支git checkout master

git stash执行

第四步:在master修改完成后,切回dev分支

第五步:git stash apply,将之前缓存数据恢复。

上一篇下一篇

猜你喜欢

热点阅读