一波Git常用操作

序言:通过xcode新建工程时,选择git管理后,然后在远程仓库中新建仓库,现在需要把本地的xcode工程提交新建的远程仓库(这次是github公开仓库)进行管理和协作开发。这涉及到git的最常用的一组操作。

  1. git init;

已经由xcode和github完成;
xcode工程保存在desktop中的SelectItemDemo文件夹,这也是本地版本库所在,路径为:/Users/andrew/Desktop/SelectItemDemo;
github远程仓库地址:https://github.com/yehkong/ItemSelectView.git

  1. git remote/git remote add.../git remote -v

1.png

2.1. git remote查看关联的远程仓库情况,没有添加远程仓库时查询不到
2.2. git remote add <remote repo name> <remote repo url>
远程仓库默认名字为origin,我这里指定名字为yehkongItemSelect。
命令:git remote add yehkongItemSelect https://github.com/yehkong/ItemSelectView.git
2.3. 再次通过git remote可以查询到远程仓库名字yehkongItemSelect;
2.4. git remote -v 查询远程仓库详情;

  1. git branch/git branch -r/git branch -a
2.png

git branch列举本地分支,git branch -r列举远程分支,git branch -a列举本地和远程分支;

  1. git add/git commit
3.png

4.1. git add <filename>把某一文件加入到版本控制缓存中
4.2. git add . (不能把点忘了),把所有的文件递归加入到版本控制缓存中
4.3. git commit 把版本控制缓存中的文件提交到本地版本库,并生成commit id,比如上图中的3d972db.

  1. git pull/git push
4.png

5.1. git push后提示错误,需要指定远程库;


5.png

5.2. 指定远程库后,提示没有指定远程的分支;


6.png

5.3. 指定远程库和分支后,输入账号和密码,提示该远程分支有新的提交,需要先集成这些新的变化;
7.png

5.4. git pull 提示对于当前本地分支没有跟踪信息,需要指定需要拉取得分支;
8.png

5.5. 指定拉取的分支后,提示有unrelated histories;


9.png

5.6. 拉取成功;
10.png

5.7. git push并指定远程仓库和分支后,成功同步到远程仓库;
  1. git merge

用于两个分支的合并
ps: git pull = git fetch + git merge

  1. git revert/git reset

git revert:是用一次新的commit来"中和"之前的commit,所有的history都会保留
git reset:是直接删除指定的commit。

推荐阅读更多精彩内容