
3,回到工程中shift+command+. 打开隐藏文件,找到.gitignore文件
4,打开.gitignore文件,编辑写入:
*.xcuserstate
project.xcworkspace
xcuserdata
UserInterfaceState.xcuserstate
project.xcworkspace/
xcuserdata/
UserInterface.xcuserstate
5,保存关闭.gitignore文件
6,退出Xcode,在终端输入 git rm --cached YourProjectName.xcworkspace/xcuserdata/YourUsername.xcuserdatad/UserInterfaceState.xcuserstate
7,在终端输入:git commit -m"Removed file that shouldn't be tracked"
8,重新打开Xcode,git commit ,git push
有鉴于此,我们应该寻求一种机制来规避这种事故的发生,在 git 版本控制系统中一般有三种不同的解决方案。
最常用也是最简单的当属 .gitignore 文件。
该方式是在工作中最常用的方式,配置方法是在仓库的根目录下新建 .gitignore 文件,在文件里配置忽略规则,同时把 .gitignore 文件加入版本管理。之后可以同步该配置到远程仓库,其他开发者可更新该文件到本地仓库,与其他克隆仓库共享同一套忽略规则。
.gitignore 文件对其所在的目录,及所在目录的全部子目录均有效。
1)查看当前Git工作目录中文件状态
可以看到有6个未被追踪的文件。
2)在Git仓库的根目录下新建一个名为 .gitignore 的文件
因为是点开头,没有文件名,没办法直接在windows系统中直接创建,要通过Git Bash客户端,用Linux系统的方式新建 .gitignore 文件。
3)将需要忽略的文件写入 .gitignore 文件中
提示:每个文件或者正则匹配占一行。
4)将 .gitignore 文件提交到本地版本库
这样就完成可忽略文件的整个过程了。
用这种方式配置忽略文件,不会同步该设置至远程仓库,只在本机起作用。
配置方法是直接编辑Git仓库根目录下的 .git/info/exclude 文件,把要忽略的规则直接写入,这个方法只在本机当前仓库起效,不会对其他的克隆仓库起效。
1)查看当前Git工作目录中文件状态
可以看到有3个未被追踪的文件。
2)编辑Git仓库根目录下的 .git/info/exclude 文件,配置忽略
3)再次查看当前Git工作目录中文件状态
我们可以看到 local.txt 文件被忽略了。
忽略规则由本机所有仓库共用(也就是对本机的所有Git仓库都起作用),配置方法如下:
Linux中,这时把全局要忽略的文件列表 .gitignore 放当前用户根目录下( ~/.gitconfig ):
Windows中,这时把全局要忽略的文件列表 .gitignore 放当前用户根目录下:
我们以Windows系统为例:
1)查看当前Git工作目录中文件状态
2)创建 .gitignore 忽略文件
我们可以复制用户根目录下的 .gitconfig 文件,并改名为 .gitignore 文件。
注意:
如下:
3)将忽略文件配置到Git全局配置文件 .gitconfig 文件中
通过如下命令进行配置。
执行命令后,查看 .gitconfig 文件内容,如下:
至此之后,所有Git仓库都会自动应用这个 gitignore_global.txt 文件中,所配置忽略的文件。
4)把需要忽略的文件加入到 gitignore_global.txt 文件中
把 gitignore_global.txt 文件中的内容清空,之后添加要忽略的文件。
gitignore_global.txt 文件内容如下:
5)查看 learngit 仓库工作目录文件状态
可以看到 hello.java 和 test.java 两个未被追踪的文件被忽略掉了。
首先我申明我使用的环境是Mac,并没有在windows上尝试过这个,希尝试了的同学可以在评论中交流一下。
在git的使用过程中,有很多文件是不需要被提交到版本库中的,比如我们这次提到的.DS_Store文件,这个文件在mac中是管理文件夹的位置之类的信息,所以并没有必要上传到git中,这个时候就需要用git.gitignore文件来忽略此类文件。
如果你需要忽略的文件在远端仓库中已经存在了,name你需要将远端的文件删除掉才可以。
使用命令:
git rm –cached 把文件.DS_Store从git的索引库中移除,但是对文件.DS_Store本身并不进行任何 *** 作也就是说本地还是有.DS_Store文件的,但是远端却没有了
在默认情况下gitgnore文件是不存在的,所以我们
需要把这个文件新建。
Mac中显示隐藏文件的方法是 command+shift+.
首先在终端中进入Git目录,输入新建命令
这样就在文件中新建了一个.gitignore隐藏文件
可以使用
进行查看,然后对文件进行编辑
进入之后按下 i 进入编辑状态
配置语法:
以斜杠“/”开头表示目录;
以星号“*”通配多个字符;
以问号“?”通配单个字符
以方括号“[]”包含单个字符的匹配列表;
以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;
此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;
我配置的是(我只不想让.DS_Store上传,如果读者想让其他文件不上传只需要在后面添加上文件名即可)
编辑好后退出vi模式即可
退出方法为:点击ESC,然后输入:wq命令回车进行保存。
完成后再使用git commit,git push上传提交。
在使用git status进行查看就可以了。
之后再也不用担心这个文件的冲突了
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)