版本控制-Git

源代码版本管理的基本概念

举例

  • VCS
  • SCM
  • CVS,SVN,ClearCase
  • Git,Mercurials

分类:

  • 基于文件的:RCS,SCCS
  • 基于中心服务器的:CVS,SVN,SS,TFS
  • 分布式的:Git,Mercurial,Bazaar

用途

  • 备份:改回原来版本
  • 协作:合并、解决冲突

Git

特点

  • 基于commit进行管理,而不失文件
  • 独特的staging area(暂存工作区)

基本用法

上传下载
  • git init//在本地建立一个新仓库
  • git clone url// 从服务器上克隆一个仓库到本地
  • git remote add name url //管理远程仓库
    • git pull [name branch]//下载
    • git push name branch //上传
  • git add//
  • git commit
撤销修改
  • 撤销仅在工作副本中的修改
    git checkout --file

  • 撤销已经登记到 stage 中的修改
    git reset HEAD file //(退回到工作副本)
    git reset --hard HEAD file//(退回到最后一次提交状态)

  • 撤销已提交到本地仓库的修改
    git revert//(抵消)
    git reset -hard //(撤销)

  • 撤销已经推送到服务器中的修改
    git revert

Branch 和 Tag

  • 用途:长期 重大修改
  • 创建:git branch name(自动提供主提交流名为 :master)
  • 使用:也是commit 指针
  • 合并:
  • 结束: git branch -d name

版本发行等,适合用 Tag 做记录
annotated:git tag -a name[rev]
lightweight:git tag name [rev]

注意:tag 不会自动推送给 remote

Git特色: rebase

操作演示 in Xcode

1.在创建project时选择Git支持

版本控制-Git_第1张图片
14595834623948.jpg

2.这样在项目菜单中的source control 中就有相关的选项了

版本控制-Git_第2张图片
14595836201769.jpg
版本控制-Git_第3张图片
14595836371149.jpg

3.做一个修改后 相关的文件就回显示一个M的标记

版本控制-Git_第4张图片
14595838178567.jpg

4.commit,会显示修改的内容

版本控制-Git_第5张图片
14595839853685.jpg
版本控制-Git_第6张图片
14595839925907.jpg

5.这样在历史中就可以看到版本的情况了

版本控制-Git_第7张图片
14595840222987.jpg

6.如果要通过服务器保存代码的话,需要设置服务器信息

版本控制-Git_第8张图片
14595841430602.jpg
版本控制-Git_第9张图片
14595841486465.jpg

7.然后通过check out 功能选择项目

版本控制-Git_第10张图片
14595842565696.jpg
版本控制-Git_第11张图片
14595842617667.jpg

8.push to remote

版本控制-Git_第12张图片
14595851854397.jpg

几个视图

  • 比较
14595853919594.jpg
版本控制-Git_第13张图片
14595854025445.jpg
  • Blame视图
14595854406216.jpg
版本控制-Git_第14张图片
14595854552921.jpg
  • log
14595854772913.jpg
版本控制-Git_第15张图片
14595854831557.jpg

你可能感兴趣的:(版本控制-Git)