zoukankan      html  css  js  c++  java
  • 小乌龟git

    一.概念

    1. 分布式版本控制系统。诞生于Linux社区,有兴趣可以去了解下git的前世今生。
    2. 与集中式版本控制有明显区别。集中式:集中管理的服务器,保存所有的修订版本,协同工作的人通过客户端连接服务器,取出最新文件或者提交更新。分布式:每个人,都有一个版本库,人人平等,每次提取都是代码仓库的一次备份,如果你修改文件A,你同事也修改了文件A,只需要把各自的修改推送给对方即可。

    二.git安装

    传送门==>https://gitforwindows.org/ 

    下载完后,开始安装git

    默认安装即可

    git安装完成。

    三.小乌龟安装和汉化

    传送门===>https://download.tortoisegit.org/tgit/2.8.0.0/  这是2.8版本,可以自己找需要的版本,然后根据自己电脑配置下载。也可以下载个语言包

    下载完成后,先安装小乌龟,在汉化。

    不停的next安装,直到完成

    完成后,打开下载的语言包进行汉化(针对英语不好的同学)

    把√打上,语言包就应用上了。查看一下是否都安装完成,很简单。我们在桌面上,右键。

    已经有git,和汉化的小乌龟。

    四.基本操作

    在代码拖管平台上,注册和创建项目。如github,开源中国。创建完后,复制项目地址

    本地创建一个空文件夹,作为本地仓库。在文件夹内,右键->git克隆。url我们刚才复制的地址

    确认后,还得添加一个git的基本信息配置,右键能看到小乌龟,鼠标停放,然后进入设置

     拉取时要求输入用户名和密码,就是在代码托管平台上时注册的,之后就开始克隆项目镜像。

    已经克隆完毕。这是我们的工作区,我们可以任意在这边修改和添加。我们先尝试添加一个文件试试。

    创建一个文件,里面随意添加一些内容

    先进行添加文件操作,现在的操作都是在本地仓库中进行的。

    然后把本地的暂存区(可先了解git工作流程)的内容提交到本地仓库。

    提交到本地仓库后,要推送到代码托管平台。右键进行推送(push)。

    推送成功,我们现在去代码托管平台看看吧。

    是不是已经推送到代码平台了,然后跟我们同分支下开发的同事。拉取时就能看到了我们的文件。

    下面我们对这文件进行删除操作。把刚才我们的test文件删除,提交到本地仓库

    提交完成后,跟添加操作一样,推送到代码托管

    在到代码平台查看,发现文件已被删除。

    修改文件,添加文件夹。也是一样的操作,就不介绍了。

    五.分支

    我们来玩下分支的概念。

    在工作中,我有个想法不确定,不知道是否正确。又不想影响到主干内容,这时,我们就可以创建一个分支,来测试自己的想法。

    我们先来看下目前分支的文件内容,待会好跟分支对比。test文件

    我们来创建一个分支

    分支名称随意,都是自己本地仓库。跟代码平台无关,想怎么玩就怎么玩。。。我取为 ==>deo

    我们现在切换到创建的deo分支,看下内容,发现跟原来一样

    我们现在进行随意更改和添加操作。。。

    现在我们切换到原来的分支上,看下内容。发现还是和原来一样的(有兴趣可以去了解下git原理,都是基于地址的操作)

    发现我们想法是正确的,想把之前的内容复制粘贴到这分支上。。如果你这么做,你就out了,现在我们把deo分支内容提交到仓库,然后进行合并分支的操作。

    合并完成并删除分支后,我们在看下我们原来分支里的test文件。

    六.文件冲突

    我们现在人为的制作一个冲突测试。

    在代码托管平台,我们test文件删除几行,在本地,不进行拉取,对同一个文件进行修改,并推送给服务器

    点解决,对比冲突文件。进行手动解决。

     左边为服务器,内容,我们发现第六行,添加和123645,本地是文字。。。我们进行手动更改

    然后保存,标记冲突解决。重新进行提交(commit),在进行push操作。冲突解决。当然还可以用终究办法,强制更新本地,与远程仓库保持一致

    git fetch --all && git reset --hard origin/master && git pull

  • 相关阅读:
    如何搜索 git 提交记录
    使用Mongo进行分页
    mongodb 数据自动备份
    linux 添加环境变量
    centos7安装bbr
    centos7安装node
    [shell]输出内容到剪切板
    centos 7 已经开启 22 端口但无法连接
    一些有趣的 js 包
    机房选择
  • 原文地址:https://www.cnblogs.com/dslx/p/10462378.html
Copyright © 2011-2022 走看看