GIT 代码管理工具 SourceTree

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

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

 

SourceTree的使用

 
 
 
 一, SourceTree配置
 
1 >在sourceTree中点击偏好设置,把默认用户信息填写进去
GIT 代码管理工具 SourceTree

2 >界面简介

GIT 代码管理工具 SourceTree

二,修改代码

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

GIT 代码管理工具 SourceTree

2 > SourceTree中的变化

GIT 代码管理工具 SourceTree

3 >拉取并提交项目

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

三,加入团队开发

•操作步骤:

•第一种(强力推荐)

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

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

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


•第二种:(不推荐)

•先向本地提交

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

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


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

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

四, 常见问题及解决方法

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

GIT 代码管理工具 SourceTree

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

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

GIT 代码管理工具 SourceTree

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

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

GIT 代码管理工具 SourceTree

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

3.1 碰到代码冲突

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

3.3 解决冲突按钮

GIT 代码管理工具 SourceTree

3.4, 外部合并工具界面

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

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

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

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

GIT 代码管理工具 SourceTree

2, 创建分支

GIT 代码管理工具 SourceTree
GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

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

GIT 代码管理工具 SourceTree

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

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

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. 源码安装php

    php安装扩展源yum install epel-releaseyum updateyum install libmcrypt libmcrypt-devel mcrypt mhash -yyum i ...

  2. Bootstrap模态框(MVC)

    BZ这篇博客主要是为大家介绍一下MVC如何弹出模态框.本文如果有什么不对的地方,希望大神们多多指教,也希望和我一样的小菜多多学习.BZ在这里谢过各位. 首先要在页面加上一个点击事件: @Html.Ac ...

  3. HDU 4442 Physical Examination

    Physical Examination Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64 ...

  4. javascript map forEach filter some every在购物车中的实战演练区分用法

    1.map forEach 1.map 循环遍历每一项,返回一个新的数组 例: 购物车商品小计: //购物车 var cart=[ {"id":101,"name&quo ...

  5. C++:(拷贝,继承,智能指针)练习

    #include <iostream> #include <string> #include <memory> #include <functional&gt ...

  6. 02-MariaDB主从安装SpringBoot整合MyBatis配置

    关于MariaDB的介绍 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为My ...

  7. nginx日志输出,https,ssl

    日志输出(浏览器直接访问)缺省安装下,浏览器是无法访问日志的,需要在编译的时候附带参数安装这些模块 ./configure --prefix=/usr/local/nginx --with-http_ ...

  8. Nginx漏洞利用与安全加固

    本文主要分为两大部分,第一部分介绍了Nginx的一些常见安全漏洞的形成原因.利用方法,并给出了相应的解决办法;第二部分介绍了Nginx安全加固时需要关注的主要内容. Nginx(发音同engine x ...

  9. OSI七层模型与TCP&sol;IP五层模型详解

    博主是搞是个FPGA的,一直没有真正的研究过以太网相关的技术,现在终于能静下心学习一下,希望自己能更深入的掌握这项最基本的通信接口技术.下面就开始搞了.   一.OSI参考模型         今天我 ...

  10. linux 文件截取

    相关函数:open, ftruncate 表头文件:#include <unistd.h> 定义函数:int truncate(const char *path, off_t length ...