GIT for mac
GIT的基本使用
一 简介
git是一款开源的分布式版本控制工具
二 起源
1 作者Linux之父: Linus Benndict Torvalds
2 辅助Linus内核的开发
三 现状
1 开源项目转移动git
四 与SVN对比
1 速度: git速度远远比svn块
2 svn集中式, git分布式
3 svn使用分支比较笨重,git可以有无限个分支
4 svn必须联网才能正常工作,git支持本地版本控制工作
5 旧版本的svn会在每一个目录存放一个.svn, git只有一个.git
五 git工作流程
六 工作原理
工作区—暂缓区—代码仓库
1 工作区 .git之外所有的区间
2 版本库 .git目录, 用于存储记录版本信息
(1) 暂缓区 git add
(2) 分支(master): git自动创建的第一个分支 git conmit
(3) HEAD指针: 用于指向当前分支
七 代码演练
Ø 个人演练(命令行演练)
(1) 创建个人仓库文件夹
(2) 终端 git init
(3) 给该git仓库配置一个用户名和邮箱
git config user.name “name”
git config user.email “[email protected]”
查看配置文件
defaults writecom.apple.finder AppleShowAllFiles -bool true
(4) 初始化代码
touch main.m
(5) 查看文件状态, 修改文件状态
git status
1 Untracked files: 文件名红色: 新添加的文件或者新修改的文件, 没有被添加到暂缓去
2 Changes to be committed:将工作区的代码已经添加到暂缓区,可以提交到代码仓库
(6) 提交到代码仓库
git commit –m “初始化项目”
master : 主要分支
(7) 修改文件
(8) git add . 将工作区的所有文件都添加到暂缓区 (23:21)
(9) 给 git起别名
git config alias.要起的别名 “status”
(10) 查看历史版本
l git log
1 commit 后边是版本号: sha 1加密算法生成的一个40位的哈希值
2 有: 说明没有查看完按回车继续看, 按q退出查看版本
l git reflog
l git config alias.lg "log --color --graph--pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(boldblue)<%an>%Creset' --abbrev-commit"
(11) 版本回退
git reset –hard (强制回退)
git reset –hard HEAD^回退到上一个版本
git reset –hard HEAD^^回退到上上一个版本
git reset –hard HEAD~n回退到上n个版本
git reset –hard 版本号前7位回退到特定版本
(12) --globle的作用
git --globle config 所有的.git 都可以使用
git config 只有当前的.git 可以使用
Ø 团队开发(文件夹/U盘/网盘/服务器/oschina)
禁止.DS_store生成:
defaults write com.apple.desktopservicesDSDontWriteNetworkStores -bool TRUE
恢复.DS_store生成:defaults deletecom.apple.desktopservices DSDontWriteNetworkStores
1 本地文件夹
(1) 创建一个代码共享库,让一个文件夹成为共享库
git init –bare
(2) 经理从代码仓库下载代码
git clone /Users/lcd/Desktop/智能家/GIT/团队开发/代码共享库/微信
(3) 项目经理初始化项目
忽略文件:
1 在和git等级目录下创建一个.gitignore文件,在该文件中指定需要忽略的文件
2 提交 git add . / gitcommit –m “添加忽略的文件”
3 项目经理xcode创建项目, commit, push
4 张三从代码仓库clone代码
(4) 团队成员同时修改一个文件都commit 没有 push ,然后其中一个同事pull 会出现冲突, xcode 形式如下, 两版代码中间有问号, 然后取舍
45:00
(不建议两个人同时修改一个storyboard,当storyboard, 解决的冲突, 还是跑不起来, 可能是标签包含关系错乱, 解决了冲突, 约束关系可能错乱)
2 新项目托管到github
(1) github 创建账号, 创建账号, xcode 导入 代码仓库 command+ shift + 1
(2) 添加团队成员
(3) 把别人的代码转移动自己的代码仓库
(1) github搜索他人框架
(2) fork
(3) 查看自己的代码仓库
(4) 修改请求(pusll request)
(5) 删除别人框架 setting
3 项目托管到oschina(git.oschina.net)
cd /Users/lcd/Desktop
git clone https://gitee.com/fatbug/weixin.git
创建项目 commit
添加管理者添加不上, 添加公钥
oschina 忽略文件不如 github全,可以直接用github