Git 忽略Xcode工程中UserInterfaceState.xcuserstate文件
1.在.git同一級目錄下添加 .gitignore(文件存在跳過此步驟):
vim .gitignore
2.在.gitignore中添加以下內容(具體匹配規則見文章結尾):
*.xcuserstate
project.xcworkspace
xcuserdata
UserInterfaceState.xcuserstate
project.xcworkspace/
xcuserdata/
UserInterface.xcuserstate
3.退出Xcode,并在當前項目根目錄下輸入:
\\也可以把終端提示的xcuserstate那一句直接粘貼過來
git rm --cached [YourProjectName].xcodeproj/project.xcworkspace/xcuserdata/[ YourUsername].xcuserdatad/UserInterfaceState.xcuserstate
\\提交到本地Git倉庫
git commit -m "commit message"
\\*在合適的時候提交到遠程服務器
git push origin master
Git 忽略Xcode工程中DS_Store文件
1.在當前工程中忽略DS_Store
//打開.gitignore文件
vim .gitignore
//在里面輸入
.DS_Store
*/.DS_Store
//保存后退出
2.全局配置忽略文件:
//在.gitconfig同級目錄(一般在用戶根目錄 cd ~)中創建.gitignore_global文件
touch .gitignore_global
//將需要忽略的內容填入,例如剛才的忽略DS_Store操作,或者其他需要的操作
//執行:
git config --global core.excludesfile ~/.gitignore_global
//配置成功,可以查看自己的全局配置,也可以去具體項目中驗證
git config --list
3.忽略.orig
//使用git mergetool合并分支時,總會產生以*.orig為擴展名的備份文件,可以修改Git配置,禁止產生備份文件
git config --global mergetool.keepBackup false
//或者直接進入系統用戶目錄下,修改.gitconfig文件,增加如下內容:
[mergetool]
prompt = true
keepBackup = false
資料補充:
文件 .gitignore的格式規范如下:
1.所有空行或者以注釋符號 # 開頭的行都會被 Git 忽略。
2.可以使用標準的 glob 模式匹配。
3.匹配模式可以以(/)開通防止遞歸。
4.匹配模式可以以(/)結尾指定目錄。
5.要忽略指定模式以外的文件或目錄,可以在模式前加上驚嘆號(!)取反。
glob模式:所謂glob模式是指shell所使用的簡化了的正則表達式。
1.*:任意個任意字符。
2.[]:匹配任何一個在方括號中的字符。
3.?:匹配一個任意字符。
4.[0-9]:匹配字符范圍內所有字符。
5.a/**/z:兩個星號表示匹配任意中間目錄