团队开发
团队开发初始化远程
仓库必须
用git init --bare
命令
新建git远端
仓库
- 这个仓库仅仅是用于管理代码,用户
不能
在此仓库中执行任何git操作 打开终端,将目录定位到仓库的创建目录
// 指定到工作目录 cd Users/XXX/Desktop/git // 创建目录 mkdir heika // 指定到代码共享库 cd heika
- 使用
git init --bare
命令初始化一个空的仓库
,在指定目录下产生一些文件,注意
此种方式不会
创建.git
隐藏文件夹// 初始化裸露的代码共享库,用户不可以在此仓库中执行任何git操作 git init --bare
注意
:以上两步可以合并
,命令如下,记得git init --bare
命令和目录路径
之间有一个空格
// 指定到工作目录 cd Users/XXX/Desktop/git // 创建目录 mkdir heika // 初始化裸露的代码共享库,用户不可以在此仓库中执行任何git操作 git init --bare heika
git config xxx
的相关命令其实改的就是代码仓库
下的config
文件的内容- 配置
当前
代码仓库中的用户名和邮箱
,会将用户信息保存在代码仓库
目录下的的config
文件中// 双引号【可以省略】 git config user.name "user" git config user.email "[email protected]"
- 配置
全局
的用户名和邮箱
,使用关键字--global
,是为了方便管理
你本地多个
代码仓库,会将用户信息保存在个人
目录下的.gitconfig
文件中// 双引号【可以省略】 git config --global user.name "manager" git config --global user.email "[email protected]"
- 查看当前所有配置
git config -l
- 编辑当前所有配置
git config -e
- 会进入vim编辑器
- 按
i
键开始编辑配置信息的内容 - 使用
方向键
将光标移动到指定位置进行编辑 - 编辑完毕后按
esc
退出编辑模式 - 再输入
:wq
or:x
是保存并关闭
vim编辑器
项目经理首先从远端
仓库clone一份之前建立好的空仓库
下来
// 首先必须指定【本地】仓库目录
cd Users/XXX/Desktop/git/heika
// 将远程仓库克隆到【本地】仓库
git clone 远端仓库地址
项目经理初始化项⽬
- 配置忽略文件
- 在
.git
隐藏文件夹同级目录
下创建一个.gitignore
文件,在该文件中指定需要忽略的文件,文件内容可以去github中搜索关键字.gitignore
,找到Objective-C需要忽略的内容,将内容填写到.gitignore
中即可 - 通过命令将
.gitignore
添加到本地仓库管理中,先执行git add .gitignore
命令,再执行git commit .gitignore -m "添加.gitignore文件"
命令
- 在
- 创建项目到与
.git
隐藏文件夹同级目录
下- 将新建的项目提交到本地代码仓库
- 将本地代码库中的内容
push
到服务器中
示例:
// 首先必须指定仓库目录(`与.git文件夹同级的目录下`) cd Users/XXX/Desktop/git/heika // 创建.gitignore文件 touch .gitignore // 将github上的忽略文件拷贝到这个文件目录中 open .gitignore // 通过Xcode创建项目,放到与.git隐藏文件夹同级的目录下 // 先将所有文件添加到缓冲区 git add . // 再提交到本地仓库 git commit -m "添加.gitignore文件和项目文件" // 最后push到代码共享服务器 git push
开发人员获取远端
仓库到本地
仓库
// 首先必须指定【本地】仓库目录
cd Users/XXX/Desktop/git/heika
// 将远程仓库克隆到【本地】仓库
git clone 远端仓库地址
新增
or修改
文件后都必须先执行git add
命令,然后再执行git commit
命令git add . git commit -m "注释" git push
- 更新
远端
仓库代码到本地
仓库git pull
- 如果
远端
仓库的代码修改了,我们在提交代码之前需要先同步下远端代码,再提交,否则会报错 ```objc // 获取远端更新的代码信息 git fetch
// 同步到本地仓库,如果有冲突解决冲突 git pull
// 提交本地
仓库中的修改到远端
仓库中
git push
```