一、命令行使用
1. 進入到工作目錄,初始化一個代碼倉庫
git init
2. 給該git倉庫配置一個用戶名和郵箱
git config user.name "wang"
git config user.email "wang@163.com"
3. 初始化代碼
touch main.m
git add main.m
4. 查看文件的狀態(tài)(git status)
- Untracked files(紅色文件):新添加的文件或者新修改的文件在工作區(qū),沒有被添加到暫緩區(qū)。
- Change to be committed(綠色):將工作區(qū)的代碼已經(jīng)添加到暫緩區(qū)中,可以被提交到代碼倉庫中。
5. 修改文件
open main.m
6. 將工作區(qū)所有的文件添加到暫緩區(qū)中
git add .
7. 給git命令起別名
git config alias.st "status"
git config alias.ci "commit -m"
8. 查看歷史版本
git log
git reflog
- git版本號:a6a87425f29e874b57591c53d597a73fDa52c7
- git版本號是由sha1加密算法生成的一個40位的哈希值
9. 版本回退
- git reset --hard HEAD 回到當(dāng)前版本
- git reset --hard HEAD^ 回到前一個版本
- git reset --hard HEAD^^ 回到前兩個版本
- git reset --hard HEAD~100 回到前100個版本
- git reset --hard 版本號前7位 回到指定的版本
10. --global的作用(配置全局的用戶名和密碼,其他地方可以不配置)
- git config --global user.name "wang"
- git config --global user.email "wang@163.com"
二、團隊開發(fā)
共享庫:文件夾/U盤/網(wǎng)盤/Github/osChina
1. 創(chuàng)建一個代碼共享庫(讓一個文件夾成為共享庫)
git init --bare
2. 經(jīng)理將共享代碼倉庫中的內(nèi)容clone下來
git clone 地址
3. 項目經(jīng)理初始化項目
- 忽略文件:在和.git同級目錄下創(chuàng)建一個.gitignore文件,在該文件中指定需要忽略的文件
- 可以去https://github.com/github/gitignore/blob/master/Objective-C.gitignore 查看OC需要忽略的內(nèi)容,將內(nèi)容填寫到.gitignore中
- git add . /git commit -m "注釋" 將.gitignore添加到本地倉庫管理中
- 初始化項目在.git同目錄下
- 將初始化的項目提交到本地
- 將本地代碼庫中的內(nèi)容push到服務(wù)器中
4. 張三加入開發(fā)
- git clone 共享代碼庫的地址
- 修改代碼->git commit -> git push
注意:
- 同一個文件的共享
- 同一個文件共享時發(fā)生代碼沖突
- 創(chuàng)建新文件的共享
- storyboard的共享
- 靜態(tài)庫的共享(不需要像svn一樣執(zhí)行add命令)
三、忽略UserInterfaceState.xcuserstate文件
- 退出XCode,打開終端,進入項目目錄下
- 在終端鍵入 git rm --cached [YourProjectName].xcodeproj/project.xcworkspace/xcuserdata/[ YourUsername].xcuserdatad/UserInterfaceState.xcuserstate
或者git rm --cached [YourProjectName].xcworkspace/xcuserdata/[ YourUsername].xcuserdatad/UserInterfaceState.xcuserstate - 在終端鍵入 git commit -m "Removed file that shouldn't be tracked"
- 重新打開Xcode commit, push。