什么是git?
  • git是一款开源的分布式版本控制工具
  • 在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的
git的起源
  • 作者是Linux之父:Linus Benedict Torvalds
  • 当初开发git仅仅是为了辅助Linux内核的开发(管理源代码)
git的现状
  • 在国外已经非常普及,国内并未普及(在慢慢普及)
  • 越来越多的开源项目已经转移到git
 

 
命令行使用git
 
初始化文件夹 作为服务器 会生成一个隐藏的git文件夹
 
当如果有新文件是  输入git status查看状态 会显示此文件未纳入管理
 
将文件纳入管理
 
将文件commit提交( 或者git commit -a -m "修改")
 
 
如果文件被修改过再查看状态会显示已经被修改过
 
注册邮箱账号
 
查看历史提交信息
 
// 初始化服务器文件夹
git init —bare
 
// 克隆远程服务器的文件夹
git clone 地址
 
// 克隆远程服务器的文件夹
git clone 地址
 
// 提交文件到服务器
Git push
 
// 从服务器拉数据
git pull
 

 

SourceTree的使用

 
 
 
 一, SourceTree配置
 
1 >在sourceTree中点击偏好设置,把默认用户信息填写进去

2 >界面简介

二,修改代码

1 > 新建一个View并添加代码

2 > SourceTree中的变化

3 >拉取并提交项目

4 >提交到本地仓储后的变化

5 > 推送本地代码至远程服务器

6 > 提交之后sourceTree主界面的变化

三,加入团队开发

•操作步骤:

•第一种(强力推荐)

•先拉取服务器的版本,不要打钩(不打立即合并的勾)

•再向本地提交,这时可能会出现冲突等问题

•本地编译运行一下,没问题之后,最后推送到服务器上去


•第二种:(不推荐)

•先向本地提交

•再拉取服务器的并合并,这时可能会出现冲突等问题

•本地编译运行一下,没问题之后,最后推送到服务器上去


•第一种的好处是在本地合并好了之后只有一个版本提交到服务器上去的,

•第二种是有两个版本到服务器上去的,一个是程序员自己的版本,还有一个是服务器自动合并的版本

四, 常见问题及解决方法

1 , 未拉取就直接向远程服务器推送

造成此类错误的解决方法为先拉取服务器上的代码, 然后再提交.

2 , 本地未提交的情况下直接拉取服务器代码

碰到此类问题先提交本地, 然后再拉取服务器代码

3 , 在同一方法内(-(void)click 方法), 两个开发人员同时修改, 此时会造成代码冲突

此时,如果你拉取并服务器代码时, 会有下面的提示出现

3.1 碰到代码冲突

3.2 代码冲突的具体显示内容

3.3 解决冲突按钮

3.4, 外部合并工具界面

3.5 解决完代码冲突后的界面

4, 创建文件或操作同一个stroyBoard时会造成代码冲突(创建文件夹时必须是真实文件夹)

五, 如果已经将一个错误的版本推送至服务器, 应当创建一个分支进行合并解决

正常情况下如果服务器上的代码也错误了, 就需要找之前的一个正确的版本进行提交回滚操作, 但在sourceTree上提交回滚之后只是有一个HEAD标签, 并没有真正改正过来, 所以此时创建一个分支, 将代码先提交到分支上, 然后修改正确后再合并至主分支上.

1, 首先选择一个正确的节点, 提交回滚

2, 创建分支

3, 将分支正确的代码提交至远程服务器

4, 先双击master主分支上 ,然后点击dev_maoge分支进行合并

5, 合并之后提交即可, 如果有冲突就以我的版本为主

 
最后将合并之后推向服务器即可, 这样就实现了如何修改服务器上的错误代码了.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

GIT 代码管理工具 SourceTree的更多相关文章

  1. git代码管理工具-SourceTree 使用介绍

    一.SourceTree 简单说明 SourceTree 是git 代码管理的可视化工具,可省去操作命令行的一个图形化工具,下载地址:https://www.sourcetreeapp.com/ 二. ...

  2. Git代码管理工具

    Git代码管理工具 Git 是分布式的源代码管理工具,这点区别于svn -让源代码可以被追溯,主要是记录了每次的更新了什么,如果新版本不想用,那么则可以退回之前的版本 -Git 是Linux之父当年为 ...

  3. [Git]代码管理工具简单使用

    1 Git简介 Git是分布式的版本控制系统,是Linux内核开发者林纳斯·托瓦兹(Linus Torvalds)为更好地管理Linux内核开发而设计.与CVS.Subversion一类的集中式版本控 ...

  4. GIT - 代码管理工具之命令集

    GIT 是一个快速.可扩展的分布式版本控制系统,它具有极为丰富的命令集,对内部系统提供了高级操作和完全访问.它会把你的每次提交的文件的全部内容都会记录下来. GIT特点 速度 简单的设计 对非线性开发 ...

  5. 代码管理工具 --- git的学习笔记二《git的工作原理》

    通过几个问题来学习代码管理工具之git 一.git是什么?为什么要用它?使用它的好处?它与svn的区别,在Mac上,比较好用的git图形界面客户端有 git 是分布式的代码管理工具,使用它是因为,它便 ...

  6. 代码管理工具 Git

    之前一直使用微软的代码管理工具TFS(Team Foundation Server)..NET CORE 2.0的发布后,考虑到.NET CORE项目可以跨平台,准备把项目迁移到.NET CORE 环 ...

  7. 代码管理工具之git的学习

    1.代码管理工具git的学习  http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 2.github的使用帮助   https:// ...

  8. 通过代码管理工具 git 完成一次完整的代码管理过程

    1.从公共远程fork一份自己的本地远程之后,从本地远程 clone 到本地 2.将本地代码跟公共远程代码做关联配置 git remote add upstream https://github.co ...

  9. GIT: 分布式开发 代码管理工具使用命令大全

    代码管理工具: GIT     什么是GIT? Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常 ...

随机推荐

  1. Manager(管理器)

    Manager(管理器) 索引 意图 结构 参与者 适用性 效果 实现 实现方式(一):Manager 模式的示例实现. 意图 将对一个类的所有对象的管理封装到一个单独的管理器类中. 这使得管理职责的 ...

  2. 登陆页面改为SSO验证

    登陆页面改为SSO验证 单点登录(SSO,single sign-on)是一个会话或用户身份验证过程,用户只需要登录一次就可以访问所有相互信任的应用系统,二次登录时无需重新输入用户名和密码.简化账号登 ...

  3. Android编程心得-在任意类中获取当前屏幕宽高

    进行Android编程时,很多时候都需要获取当前屏幕的宽度与高度,但是当我们需要在别的类中调用屏幕宽高时,直接用原来的方法是不行的,下面我来介绍如何在任意类中调用宽度高度的两种方法. public v ...

  4. office文件的预览

    使用FlexPaper实现office文件的预览(C#版) 需求很简单,用户上传office文件(word.excel.ppt)后,可以预览上传的这些文件.搜索的相关的资料后.整理如下: Step1. ...

  5. 查看Tomcat版本

    在Tomcat的安装目录的bin目录下,有这么两个文件 version.bat    windows下的批处理文件 version.sh      Linux下的Shell脚本 在DOS窗口执行ver ...

  6. Myeclipse新建 配置Hibernate

    一.新建一个JAVA项目 二.选中新建的项目单击右键[Add Hibernate Capab-] 三.添加MyEclipse Hiberate Libaries(Hibernate 3.2) 单击[B ...

  7. 7z文件格式及其源码的分析

    7z文件格式及其源码的分析 本文是一个系列. 主要是分享我最近一年做7z文件开发的经验. 主要包括7z官方源码的结构分析, 以及7z文件格式的分析. 其中涉及到7z源码结构的各个细节, 以及7z文件格 ...

  8. EF-Code First(5):二级缓存

    EF-Code First(5):二级缓存 〇.目录 一.前言 二.缓存设计 (一) 引用EFProviderWrappers (二) 缓存代码分析及整合 1. 关键代码简介 2. 应用缓存扩展 三. ...

  9. Introduction to OOC Programming Language

    Introduction to OOC Programming Language 文/akisann @ cnblogs.com / zhaihj @ github.com 本文同时发布在github ...

  10. 玩转docker镜像和镜像构建

    摘要 本文从个人的角度,讲述对于docker镜像和镜像构建的一些实践经验.主要内容包括利用docker hub进行在线编译,下载镜像,dind的实践,对于镜像的一些思考等.本文是对当时微信分享内容的一 ...