IOS-源代码管理工具(Git)
一、简介
在Mac上,比较好用的git图形界面客户端有
. GIT简介(PPT)
================================================================================ . GIT命令行帮助
================================================================================
$ svn help
查看svn所有命令的帮助
$ svn help 子命令 # 要退出帮助信息,按"q"
# 翻看下页,按"空格"
# 翻看上页,按"CTRL+B"
# 要搜索相关文字,按"/"然后输入"相关文字" . 创建代码库 & 配置个人信息
================================================================================
> 创建代码仓库
$ git init > 配置用户名和邮箱
$ git config user.name lnj
$ git config user.email lnj@gmail.com * 以上两个命令会将用户信息保存在当前代码仓库中 # 只有配置了用户和邮箱之后,git才能识别出操作的人员信息,通过钩子(hooks)程序可以设置一些动作
# 例如单元测试发现问题后,自动给相关人员发送电子邮件
* 注意 暂时不建议投入一毛钱精力 > 如果要一次性配置完成可以使用一下命令
$ git config --global user.name lnj
$ git config --global user.email lnj321@gmail.com * 以上两个命令会将用户信息保存在用户目录下的 .gitconfig 文件中 > 查看当前所有配置
$ git config -l . 实际开发
================================================================================
> 创建代码,开始开发
$ touch main.c
$ open main.c > 将代码添加到代码库
# 查看当前代码库状态
$ git status
# 将文件添加到代码库
$ git add main.c
# 将修改提交到代码库
$ git commit -m "添加了main.c" 提示:
* 在此一定要使用 -m 参数指定修改的备注信息
* 否则会进入 vim 编辑器,如果对vim不熟悉,会是很糟糕的事情 # 将当前文件夹下的所有新建或修改的文件一次性添加到代码库
$ git add . > 添加多个文件
$ touch Person.h Person.m
$ git add .
$ git commit -m "添加了Person类"
$ open Person.h
$ git add .
$ git commit -m "增加Person类属性" * 注意 使用git时,每一次修改都需要添加再提交,这一点是与svn不一样的 git 的重要概念及工作原理
--------------------------------------------------------------------------------
工作区
暂存区(staged)
分支(HEAD) . 别名 & 日志
================================================================================
$ git config alias.st status
$ git config alias.ci "commit -m" 个人建议:除非特殊原因,最好不要设置别名,否则换一台机器就不会用了 # 查看所有版本库日志
$ git log
# 查看指定文件的版本库日志
$ git log 文件名 # 配置带颜色的log别名
$ git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" 提示:在git中,版本号是一个由SHA1生成的哈希值 . 版本号,让我们在任意版本之间穿梭
================================================================================
# 回到当前版本,放弃所有没有提交的修改
$ git reset --hard HEAD
# 回到上一个版本
$ git reset --hard HEAD^
# 回到之前第3个修订版本
$ git reset --hard HEAD~()
# 回到指定版本号的版本
$ git reset e695b67 # 查看分支引用记录
$ git reflog . 单个文件的修改管理
================================================================================
# 查看文件变化
$ git diff
# 撤销对文件做的修改
$ git checkout Person.h
# 从代码库(暂存区中删除文件)
. 建立代码仓库(专门用于团队开发的代码仓库)
================================================================================ # 切换目录
$ cd /Users/lnj/Desktop/git演练/公司/weibo
# 建立空白代码库(专门用于团队开发)
$ git init --bare . 项目经理准备项目(前奏)
================================================================================ # 切换目录
$ cd /Users/lnj/Desktop/git演练/经理
# "克隆"代码库到本地
$ git clone /Users/lnj/Desktop/git演练/公司/weibo/ # 个人信息配置(因为要演示一台机器上的多人协作,日常开发可以忽略)
$ git config user.name manager
$ git config user.email manager@.com .gitignore
--------------------------------------------------------------------------------
.gitignore可以指定哪些文件不纳入版本库的管理 参考网址:https://github.com/github/gitignore # 命令行中进入与.git同级的目录
$ cd /Users/lnj/Desktop/git演练/经理/weibo 将以下命令一次性粘贴到命令行中
--------------------------------------------------------------------------------
echo -e "# Xcode
#
build/
*.pbxuser
*.mode1v3
*.mode2v3
*.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate
# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control
#
# Pods/" > .gitignore
--------------------------------------------------------------------------------
# 将.gitignore添加到代码库
$ git add .gitignore . 创建项目
================================================================================
提交同时"push"到远程代码仓库 . 新人加入
================================================================================ ... . 分布式的代码库 - 仅供参考
================================================================================
由于git是分布式的,任何一台计算机上都保留有完整的代码库的内容,因此可以把团队开发的代码库放在任何位置 多个远程代码库之间的同步演练"提示,此演练仅供了解,具体的使用,需要一定的团队规模之后,才能够体会" . 分支管理 - Tag
================================================================================
# 查看当前标签
$ git tag
# 在本地代码库给项目打上一个标签
$ git tag -a v1. -m 'Version 1.0'
# 将标签添推送到远程代码库中
$ git push origin v1. # 使用tag,就能够将项目快速切换到某一个中间状态,例如产品开发线上的某一个稳定版本
# 签出v1.0标签
$ git checkout v1.
# 从签出状态创建v1.0bugfix分支
$ git checkout -b bugfix1. # 查看远程分支
$ git branch -r
# 删除远程分支
$ git branch -r -d origin/bugfix1.
. 分布式的代码库 - 仅供参考
================================================================================
由于git是分布式的,任何一台计算机上都保留有完整的代码库的内容,因此可以把团队开发的代码库放在任何位置 多个远程代码库之间的同步演练"提示,此演练仅供了解,具体的使用,需要一定的团队规模之后,才能够体会" . 分支管理 - Tag
================================================================================
# 查看当前标签
$ git tag
# 在本地代码库给项目打上一个标签
$ git tag -a v1. -m 'Version 1.0'
# 将标签添推送到远程代码库中
$ git push origin v1. # 使用tag,就能够将项目快速切换到某一个中间状态,例如产品开发线上的某一个稳定版本
# 签出v1.0标签
$ git checkout v1.
# 从签出状态创建v1.0bugfix分支
$ git checkout -b bugfix1. # 查看远程分支
$ git branch -r
# 删除远程分支
$ git branch -r -d origin/bugfix1.
如何使用/学习第三方框架? 优秀的第三方框架都在 github.com > 搜索
> git clone 获得完整版本
$ git clone https://github.com/AFNetworking/AFNetworking.git
> 获取最新版本 git pull
* 进入clone的本地文件夹
$ git pull > 看github上的文档,优秀的第三方框架都有好的文档
> 编写测试程序,看运行结果
> 针对感兴趣的部分,看源代码 > 有问题去http://stackoverflow.com
IOS-源代码管理工具(Git)的更多相关文章
- iOS核心笔记—源代码管理工具-GIT
源代码管理工具-GIT 一. git 概述 1. git 简介? 什么是git? > git是一款开源的分布式版本控制工具 > 在世界上所有的分布式版本控制工具中,git是最快.最简单.最 ...
- 源代码管理工具-GIT
源代码管理工具-GIT ---- 一. 掌握 - git 概述 1. git 简介? 什么是git? git是一款开源的分布式版本控制工具在世界上所有的分布式版本控制工具中,git是最快.最简单.最流 ...
- iOS源代码管理工具
源代码管理工具简介 1.为什么会出现源代码管理工具? 为了解决在软件开发过程中,由源代码引发的各种蛋疼.繁琐的问题 2.源代码管理不当可能会引起的后果? 无法后悔:做错了一个操作后,不能回到之前的操作 ...
- 源代码管理工具GIT
01.GIT简介 svn是集中式的源代码管理工具,必须联网才能操作 git是分布式的. 有两中:一个是本地代码仓库,一个是远程代码仓库 分布式源代码管理工具 02.GIT - 本地代码仓库使用流程 1 ...
- iOS 源代码管理工具之SVN
源代码管理工具之SVN 源代码管理工具SVN是一款非常强大的源代码管理工具,现在国内70%-90%的公司都在使用SVN来管理源代码,下面就让小编给大家着重介绍一下SVN的使用,SVN的使用主要分为下面 ...
- 83、源代码管理工具(Git)
一.简介 git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git起源 作者是Linux之父:Linus Benedict Torvalds 当 ...
- 源代码管理工具 ——Git的介绍与简要教程
一.Github与Git (一)简介 GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub. GitHub于2008年4月10日正式上线 ...
- Git 源代码管理工具
Git 源代码管理工具 Git基本信息 Git :Git是一个“分布式”的版本控制工具 Git的作者是Linux之父 Linus Benedict Torvolds,当初开发Git仅仅是为了辅助Lin ...
- [Tool] 源代码管理之Git
本节目录 什么是Git 什么是GitHub 安装Git GitHub之Repository GitHub之托管页面 常用Git 命令 什么是Git 由于现在的开发多人协同办公,因此出现源代码管理工具 ...
- iOS核心笔记—源代码管理工具-SVN
源代码管理工具-SVN 一. 源代码管理工具概述 1. 源代码管理工具的作用? > 能追踪一个项目从诞生一直到定案的过程 > 记录一个项目的所有内容变化,无限制返回 > 查看特定版本 ...
随机推荐
- [Windows Powershell]-学习笔记(2)
数学运算 我们可以把powershell当成一个计算器.如键入命令行那样输入数学表达式,回车,powershell会自动计算并把结果输出.常用的加减乘除模(+,-,*,/,%)运算和小括号表达式都支持 ...
- hihocoder1478 水陆距离
地址:http://hihocoder.com/problemset/problem/1478 题目: 水陆距离 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定一个 ...
- ACM-ICPC 2018 南京赛区网络预赛 G. Lpl and Energy-saving Lamps (弱线段树)
线段树节点维护区间最小值,查找时优先从左侧的区间寻找. 每一次循环都在树中不停寻找第一个小于等于当前持有数的值,然后抹去,直到找不到为止. #include<cstdio> #includ ...
- matlab基本操作总结
1.clear;//清除工作平台变量2.close all;//关闭打开的图形窗口3.I = imread('C:\Users\dell\Desktop\rice.jpg');//读取图像,存储在I数 ...
- 设置 vadio 和checkbox是否选中
1.js方案 <!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title>te ...
- webservice、WSDL简介
Webservice是跨平台.跨语言的远程调用技术 通信机制的本质是xml数据交换 采用soap协议进行通信 而WSDL 指网络服务描述语言 (Web Services Description Lan ...
- 20144303 《Java程序设计》第二次实验实验报告
20144303 <Java程序设计>第二次实验实验报告 北京电子科技学院(besti)实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握U ...
- Eye Protection FAQ
Q: Why does smart protection not work? A: Please make sure the checkbox "Eye Protection" i ...
- Dokcer ELK
使用 docker 搭建 ELK 非常简单 docker run --name myes -d -p 9200:9200 -p 9300:9300 elasticsearch:2.4.4 运行 ...
- CDN专业一站式解决方案
调度,弱网加速,动态防御,无限节点(重)新技术