一:在sourcetree
点击勾选问号文件
时报错
问题:用sourcetree
时,添加修改的文件会遇到问题
例如:从分支A
切到分支B
,或者修改文件
,然后在sourcetree
点击勾选文件
时,弹出一个框,红色文字
提示遇到下面这个报错:
fatal: pathspec ‘xxxxxx‘ did not match any files
并且发现需要提交的文件夹,都是问号:
image.png
解决步骤:需要设置,然后提交.gitignore文件
,提交推送完成,然后就可以操作这些问题了。
1,从.gitignore
中移除该忽略的文件
打开sourcetree
,按照图中的1,2,3,4,5的步骤操作,添加忽略,最后保存。
image.png
注释:其实上面的编辑,就是直接右击鼠标
,copy
带有问号文件
或者组件化工程模块的名
,粘贴到上面这个设置文件里面,注意检查下路径问题。
HLLCDriver/Classes/BusinessModule/HLLCDriverMain/_Pods.xcodeproj
和
HLLCDriver/Classes/BusinessModule/HLLMapSDK/Example/Pods
HLLCDriver/Classes/BusinessModule/HLLMapSDK/Example/Tests
HLLCDriver/Classes/BusinessModule/HLLMapSDK/Example/Podfile.lock
2,上面操作完成,sourcetree
里面会出现一个.gitignore文件
,git add .gitignore文件
并git commit至版本库
就行了。这些问号文件,就可以提交操作了。
二:gitignore介绍
我们做的每个Git项目
中都需要一个.gitignore文件
,这个文件的作用就是告诉Git
哪些文件不需要添加到版本管理中。
①常用的规则
/mtk/ 过滤整个文件夹
*.zip 过滤所有.zip文件
/mtk/do.c 过滤某个具体文件
以上规则意思是:被过滤掉的文件就不会出现在你的GitHub库中了,当然本地库中还有,只是push的时候不会上传。
除了以上规则,它还可以指定要将哪些文件添加到版本管理中。
!src/ 不过滤该文件夹
!*.zip 不过滤所有.zip文件
!/mtk/do.c 不过滤该文件
②配置语法:
以斜杠/开头表示目录;
以星号*通配多个字符;
以问号?通配单个字符
以方括号[]包含单个字符的匹配列表;
以叹号!表示不忽略(跟踪)匹配到的文件或目录;
此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;