iOS开发中的Git流程
创建新的仓库
克隆到本地
配置
将本地仓库推上github远程仓库
想将一个早期创建的demo传上github
- 根据上面操作在github创建一个新的仓库(还创建了一个Readme,后面再说)
到这一步就报错了,是由于前面埋的坑,因为前面在github上创建新仓库时添加了一个Readme,导致不能push
这一步强制推送到远程仓库,远程仓库将被本地仓库覆盖,推送后Readme被删除了
冲突解决
对于解决 Git 的 Merge Conflict 你有哪些经验和技巧?
芒果iOS开发之 CONFLICT (content): AutoMatic merge failed;fix conflicts and then commit the result.
对于解决 Git 的 Merge Conflict 你有哪些经验和技巧?
有用命令
- git branch -vv
列出本地追踪的远程分支
- git checkout --track origin/dev
在本地创建dev分支并追踪远程的dev分支
- git checkout -b br-2.1.1.1 origin/br-2.1.2.1
使用checkout命令,创建新的分支 br-2.1.2.1,跟踪远程的origin/br-2.1.2.1
git branch --set-upstream-to=origin/br-2.1.2.1 br-2.1.2.1追踪
推送新分支到远程
git push -u origin 本地分支:远程分支,远程分支不存在将新建远程分支
git push -u origin feature/test1:feature/test1oooogit checkout . 恢复工作区的所有内容
git reset HEAD test.txt 将 HEAD test.txt从暂存区放回工作区
git reset --hard 重置暂存区与工作区,与上一次commit保持一致
git reset [commit] 重置当前分支的指针为指定commit(如果从最前的commit使用这个命令,回退到的commit后的所有commit都不见了,可以使用这git reflog查看历史提交然后用git reset [commit]回到消失的commit),同时重置暂存区,但工作区不变
- git reset --hard [commit] 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致(跟上面的git reset [commit]差不多?)
git reset --keep [commit] 重置当前HEAD为指定commit,但保持暂存区和工作区不变
git revert [commit]
git revert 就是回退到之前版本并且跟当前版本比较,看保留还是不保留当前版本的变化,然后反向提交?
git reset revert 回退回滚取消提交返回上一版本
- Git-分支-分支的新建与合并 写的比较好
- git checkout --ours MyProject/JM.framework/vue.js
合并代码时 如果此文件除了冲突 保留自己分支上的文件 适合合并二进制文件。。
参考链接
在GitHub上分享和展示你的代码
三分钟搞定Github代码分享
Git与Github的使用,有团队流程
Git常用命令大图,比较全
GotGitHub--比详细
怎样使用 GitHub?--知乎