Git和SourceTree配合使用
Git介绍
git是当今最强大的本地的分布式代码版本管理工具。
git的核心概念与操作:开发环境,本地仓库,远程仓库。他们的关系如下图:

与CVS及SVN的比较:
CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统。
集中式版本控制系统是指:代码仅放中央服务器上,每次开发时必须联网,从中央服务器拉取代码,然后提交代码。
并且只有中央服务器才会记录版本变更。如果中央管理器挂了,所有人都不能干活了。
和集中式版本控制系统不同,使用分布式的版本控制系统Git。每个人都有一套完整的本地代码仓库和版本信息。
如果远程仓库挂了,从别人的电脑上拷贝一份就好了。
与CSV,SVN等Git安装方法
1.安装git。官网下载git安装包,官网地址:https://git-scm.com/download/mac(下载较慢)。
2.通过homebrew安装(推荐)
安装homebrew 终端中执行 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装完成后,在终端中执行 sudo brew install git
安装完成后,在终端中执行 git --version,显示当前git版本则安装成功
Gitlab和SourceTree使用
Gitlab是使用Git作为代码管理工具,并在此基础上搭建起来的web服务。SourceTree兼容git的客户端。安装SourceTree请参考下:https://blog.csdn.net/qq_16066381/article/details/81777417
以https传输为例,到gitlab找到需要添加的项目, etl项目的仓库地址是
假如不在这个项目成员中,需要项目的管理员添加develop权限。

sourceTree添加gitlab项目方法:
菜单栏 –> 文件 –> 新建/克隆 –> +新仓库 –> 从url克隆

按提示输入本机密码,gitLab登录密码,设置本地仓库位置,点击克隆:

切换到dev分支。mater分支一般由管理员最终merge。用于上线。提交本地代码
- 勾选开发环境中修改的代码,提交到本地仓库

- 将已缓存的代码推送到远程仓库

- 勾选开发环境中修改的代码,提交到本地仓库
解决冲突
假如本地代码的版本和远程仓库的版本不同,git不知道如何合并代码,就会代码冲突,此时需要我们手动解决冲突。

为了避免冲突,应该及时拉取远程仓库的代码,和推送本地的代码.
etl项目代码提交规范()
hive sql应放到hive-sql目录下
建表语句放在hive-sql/table-creation/层 目录下,文件命名遵守命名规则(待定)
- etl sql 应放到hive-sql/data-ops/层 目录下,文件命名遵守命名规则目录下
- 遇到版本冲突,不确定保留哪个版本时,应当和代码冲突的开发人员共同,不要强制提交
- 提交时,代码的作用,应该在备注中写明
- 当天开发完成的代码应该及时提交
学习和思考
- 如何用命令行操作git
- 如何用ssh连接远程仓库
- 如何在idea中提交代码
推荐大家静下来学习完这篇博客:
廖雪峰的学习网站 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
Git和SourceTree配合使用的更多相关文章
- Eclipse Git和sourceTree用法
Eclipse Git和sourceTree用法 Eclipse Git: 提交代码到git: 1.team->Repository->pull 若没有冲突: 2.team->com ...
- git之sourceTree操作流程
1x.sourceTree的使用流程 12.Git管理工具对比(GitBash.EGit.SourceTree) 11.SourceTree使用SSH克隆码云项目 ====== 1x.source ...
- git之sourceTree使用github和码云的代码小结
16.使用git出现的错误记录 15. Permission denied (publickey)错误: git远程库与本地库同步 git设置ssh公钥 Bad escape character ' ...
- Git和SourceTree入门教程
转自CSDN:http://blog.csdn.net/collonn/article/details/39259227 -->本教程适用于主流的开源网站github和bitbucket,个人认 ...
- git vs sourcetree
SourceTree&Git部分名词解释 克隆(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库 提交(commit):将暂存文件上传到本地仓库(我们在Finder中对本地仓 ...
- 手把手教你用git和SourceTree上传项目到github细解(转)
尊重原创:https://blog.csdn.net/qq_32365567/article/details/52859166 一.引言 我想大家现在都很熟悉github了,也能运用github上开源 ...
- 使用 Git + Dropbox + SourceTree 做 Source Code Management
此篇文章主要針對有安裝 XCode 的 Mac 用戶. Git 版本控管工具,作用類似 CVS.Subversion(簡 稱SVN),好處在於 Git 不像 CVS 及 SVN 是屬於集中式的版本控管 ...
- 使用git和sourcetree提交代码的一些问题
今天遇到的几个坑算是解决了1.开始不能用指令提交,可以执行git add命令前添加gitdir=$(git rev-parse --git-dir); scp -p -P 29418 wangtao1 ...
- Git客户端SourceTree回滚到远程仓库和切换分支
使用SourceTree将远程仓库回滚到某一次提交 原理:在本地需要回滚的commit上创建一个分支,将该分支合并到远程仓库. 步骤 1.在需要回滚的commit上右键创建分支 创建分支 2.输入新的 ...
随机推荐
- iOS.Animation.CAMediaTiming
CAMediaTiming Protocol CALayre 和 CAAnimation 实现了CAMediaTiming 接口. CAMediaTiming 定义了8个属性. speed属性: Co ...
- Zookeeper 修改heap size
对应原文出处: https://support.pivotal.io/hc/en-us/articles/201861286-Zookeeper-service-heapsize-is-10GB-or ...
- wait()和sleep()的区别
wait()是Object类的方法,当一个线程执行到wait()方法时,该线程就进入到一个和该线程相关的等待池中,同时释放了对象锁(暂时失去对象锁,wait(long timeout)超时时间到后还需 ...
- 记录点复习题目和linux学习
哈希怎么底层.key放数组哪部分里面 HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体. 开网页怎么获取页面 linux 看进程的cpu 和内存占用率 看哪个端口被占用 ...
- install virtualenv
$ [sudo] pip install virtualenv $ mkdir ~/envs $ virtualenv ~/envs/lsbaws/ $ cd ~/envs/lsbaws/ $ ls ...
- mui-手动触发下拉刷新
mui-手动触发下拉刷新 下拉刷新结束 mui官方文档中下拉刷新结束方法,不生效, 文档地址 1 mui('#refreshContainer').pullRefresh().endPulldow ...
- linux系统,在centos7环境下安装jdk步骤
记录一下安装jdk1.8版本的出错过程: 按照这个博客内容安装的,以及修改文件权限博客 [Linux]CentOS7下安装JDK详细过程 [Linux]目录文件权限的查看和修改[转] 1.安装的jdk ...
- C# 使用 HttpPost 请求调用 WebService
之前调用 WebService 都是直接添加服务引用,然后调用 WebService 方法的,最近发现还可以使用 Http 请求调用 WebService.这里还想说一句,还是 web api 的调用 ...
- python下使用opencv拍照
首先在命令中安装opencv: pip install opencv-python 然后打开notebook: jupyter notebook 建立文件,写入如下代码: import cv2 cap ...
- windows下如何修改mysql的端口号