文章目录

  • GIT
    • 什么是版本控制
    • 常见的版本控制工具
    • 版本控制分类
    • Git与SVN的主要区别
    • 软件下载
    • 启动Git
    • 常用的Linux命令
    • Git配置
    • 设置用户名与邮箱(用户标识,必要)
    • 三个区域
    • 工作流程
    • 创建工作目录与常用指令
    • 本地仓库搭建
    • 克隆远程仓库
    • 文件的四种状态
    • 查看文件状态
    • 忽略文件
    • github 是有墙的,比较慢,在国内的话,我们一般使用 gitee ,公司中有时候会搭建自己的gitlab服务器
    • 说明:GIT分支
  • SVN
    • SVN安装
    • 构建工程
    • 常见操作
      • 撤销和恢复三种
      • 忽略文件
      • 解决冲突
      • 分支
      • 暂存
      • 复杂的代码合并
  • GitLab
    • GitLab的了解
  • 所有命令
    • 1、git命令
  • 借鉴说明

GIT

什么是版本控制

版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。

  • 实现跨区域多人协同开发
  • 追踪和记载一个或者多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 统计工作量
  • 并行开发、提高开发效率
  • 跟踪记录整个软件的开发过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

简单说就是用于管理多人协同开发项目的技术。

没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。

无论是工作还是学习,或者是自己做笔记,都经历过这样一个阶段!我们就迫切需要一个版本控制工具!

多人开发就必须要使用版本控制!

常见的版本控制工具

我们学习的东西,一定是当下最流行的!

主流的版本控制器有如下这些:

  • Git
  • SVN(Subversion)
  • CVS(Concurrent Versions System)
  • VSS(Micorosoft Visual SourceSafe)
  • TFS(Team Foundation Server)
  • Visual Studio Online

版本控制产品非常的多(Perforce、Rational ClearCase、RCS(GNU Revision Control System)、Serena Dimention、SVK、BitKeeper、Monotone、Bazaar、Mercurial、SourceGear Vault),现在影响力最大且使用最广泛的是Git与SVN

版本控制分类

1、本地版本控制

记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS。

2、集中版本控制 SVN

所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改

所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。而且,所有数据都保存在单一的服务器上,有很大的风险这个服务器会损坏,这样就会丢失所有的数据,当然可以定期备份。代表产品:SVN、CVS、VSS

3、分布式版本控制 Git

每个人都拥有全部的代码!安全隐患!

所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。

不会因为服务器损坏或者网络问题,造成不能工作的情况!

Git与SVN的主要区别

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!

Git是目前世界上最先进的分布式版本控制系统。

聊聊Git的历史

同生活中的许多伟大事物一样,Git 诞生于一个极富纷争大举创新的年代。

Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。

Linux社区中存在很多的大佬!破解研究 BitKeeper !

到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux 内核社区免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux 的缔造者 Linus Torvalds)基于使用 BitKeeper 时的经验教训,开发出自己的版本系统。(2周左右!) 也就是后来的 Git!

Git是目前世界上最先进的分布式版本控制系统。

Git是免费、开源的,最初Git是为辅助 Linux 内核开发的,来替代 BitKeeper!

Linux和Git之父李纳斯·托沃兹(Linus Benedic Torvalds)1969、芬兰

Git环境配置

软件下载

打开 [git官网] https://git-scm.com/,下载git对应操作系统的版本。

所有东西下载慢的话就可以去找镜像!

官网下载太慢,我们可以使用淘宝镜像下载:http://npm.taobao.org/mirrors/git-for-windows/

下载对应的版本即可安装!

安装:无脑下一步即可!安装完毕就可以使用了!

启动Git

安装成功后在开始菜单中会有Git项,菜单下有3个程序:任意文件夹下右键也可以看到对应的程序!

**Git Bash:**Unix与Linux风格的命令行,使用最多,推荐最多

**Git CMD:**Windows风格的命令行

Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令

常用的Linux命令

平时一定要多使用这些基础的命令!

1)、cd : 改变目录。

2)、cd . . 回退到上一个目录,直接cd进入默认目录

3)、pwd : 显示当前所在的目录路径。

​ 5)、touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。

6)、rm: 删除一个文件, rm index.js 就会把index.js文件删除。

7)、mkdir: 新建一个目录,就是新建一个文件夹。

8)、rm -r : 删除一个文件夹, rm -r src 删除src目录

rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!

9)、mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。

10)、reset 重新初始化终端/清屏。

11)、clear 清屏。

12)、history 查看命令历史。

13)、help 帮助。

14)、exit 退出。

15)、#表示注释

Git配置

所有的配置文件,其实都保存在本地!

查看配置 git config -l

查看不同级别的配置文件:

#查看系统configgit config --system --list  #查看当前用户(global)配置git config --global  --list

Git相关的配置文件:

1)、Git\etc\gitconfig :Git 安装目录下的 gitconfig --system 系统级

2)、C:\Users\Administrator\ .gitconfig 只适用于当前登录用户的配置 --global 全局

这里可以直接编辑配置文件,通过命令设置后会响应到这里。

设置用户名与邮箱(用户标识,必要)

当你安装Git后首先要做的事情是设置你的用户名称和e-mail地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:

git config --global user.name "kuangshen"  #名称git config --global user.email 24736743@qq.com   #邮箱

只需要做一次这个设置,如果你传递了–global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要–global选项。总之–global为全局配置,不加为某个项目的特定配置。

Git基本理论(重要)

三个区域

Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:

  • Workspace:工作区,就是你平时存放项目代码的地方
  • Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
  • Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
  • Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换

本地的三个区域确切的说应该是git仓库中HEAD指向的版本:

  • Directory:使用Git管理的一个目录,也就是一个仓库,包含我们的工作空间和Git的管理空间。
  • WorkSpace:需要通过Git进行版本控制的目录和文件,这些目录和文件组成了工作空间。
  • .git:存放Git管理信息的目录,初始化仓库的时候自动创建。
  • Index/Stage:暂存区,或者叫待提交更新区,在提交进入repo之前,我们可以把所有的更新放在暂存区。
  • Local Repo:本地仓库,一个存放在本地的版本库;HEAD会只是当前的开发分支(branch)。
  • Stash:隐藏,是一个工作状态保存栈,用于保存/恢复WorkSpace中的临时状态。

工作流程

git的工作流程一般是这样的:

1、在工作目录中添加、修改文件;

2、将需要进行版本管理的文件放入暂存区域; git add …

3、将暂存区域的文件提交到git仓库。 git commit

因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)

Git项目搭建

创建工作目录与常用指令

工作目录(WorkSpace)一般就是你希望Git帮助你管理的文件夹,可以是你项目的目录,也可以是一个空目录,建议不要有中文。

日常使用只要记住下图6个命令:

本地仓库搭建

创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库。

1、创建全新的仓库,需要用GIT管理的项目的根目录执行:

# 在当前目录新建一个Git代码库$ git init

2、执行后可以看到,仅仅在项目目录多出了一个.git目录,关于版本等的所有信息都在这个目录里面。

克隆远程仓库

1、另一种方式是克隆远程目录,由于是将远程服务器上的仓库完全镜像一份至本地!

# 克隆一个项目和它的整个代码历史(版本信息)$ git clone [url]  # https://gitee.com/kuangstudy/openclass.git

2、去 gitee 或者 github 上克隆一个测试!

Git文件操作

文件的四种状态

版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。

  • Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged.
  • Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
  • Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改 !
  • Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified

查看文件状态

上面说文件有4种状态,通过如下命令可以查看到文件的状态:

#查看指定文件状态git status [filename]
#查看所有文件状态git status
# git add .                  添加所有文件到暂存区# git commit -m "消息内容"    提交暂存区中的内容到本地仓库 -m 提交信息

忽略文件

有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等

在主目录下建立".gitignore"文件,此文件有如下规则:

  1. 忽略文件中的空行或以井号(#)开始的行将会被忽略。
  2. 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,…})代表可选的字符串等。
  3. 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
  4. 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。
  5. 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。
#为注释*
.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!
!lib.txt     #但lib.txt除外
/temp        #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/       #忽略build/目录下的所有文件
doc/*.txt    #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

使用码云

github 是有墙的,比较慢,在国内的话,我们一般使用 gitee ,公司中有时候会搭建自己的gitlab服务器

这个其实可以作为大家未来找工作的一个重要信息!

1、注册登录码云,完善个人信息

2、设置本机绑定SSH公钥,实现免密码登录!(免密码登录,这一步挺重要的,码云是远程仓库,我们是平时工作在本地仓库!)

# 进入 C:\Users\Administrator\.ssh 目录# 生成公钥ssh-keygen

3、将公钥信息public key 添加到码云账户中即可!

4、使用码云创建一个自己的仓库!

许可证:开源是否可以随意转载,开源但是不能商业使用,不能转载,… 限制!

克隆到本地!

IDEA中集成Git

1、新建项目,绑定git。

注意观察idea中的变化

2、修改文件,使用IDEA操作git。

  • 添加到暂存区
  • commit 提交
  • push到远程仓库

3、提交测试

这些都是单个人的操作!

学习的方式最重要!学会学习!我上课的更多时候都是在教大家去学习一种理念和思想(学习方式)

有道无术、术尚可求。有术无道、止于术!

真正的教学,授人以渔!

说明:GIT分支

分支在GIT中相对较难,分支就是科幻电影里面的平行宇宙,如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,我们就需要处理一些问题了!

git分支中常用指令:

# 列出所有本地分支git branch
# 列出所有远程分支git branch -r
# 新建一个分支,但依然停留在当前分支git branch [branch-name]
# 新建一个分支,并切换到该分支git checkout -b [branch]
# 合并指定分支到当前分支$ git merge [branch]
# 删除分支$ git branch -d [branch-name]
# 删除远程分支$ git push origin --delete [branch-name]$ git branch -dr [remote/branch]

IDEA中操作

如果同一个文件在合并分支时都被修改了则会引起冲突:解决的办法是我们可以修改冲突文件后重新提交!选择要保留他的代码还是你的代码!

master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。

作业练习:找一个小伙伴,一起搭建一个远程仓库,来练习Git!

1、不要把Git想的很难,工作中多练习使用就自然而然的会了!

2、Git的学习也十分多,看完我的Git教程之后,可以多去思考,总结到自己博客!

SVN

1、svn是什么[^项目管理工具]?

​ 代码版本管理工具 他能记住你的每一次的修改

​ 查看所有的修改记录 恢复到任何历史版本 恢复已经删除的文件

2、它与Git比有什么优势

​ 使用简单,上手快

​ 目录级权限控制,企业安全必备

​ 子目录Checkout,减少不必要的文件检出

3、SVN仓库

​ 推荐:svnbucket.com SVN桶 现在最好用的SVN服务

4、安装SVN客户端

​ TortoiseSVN Cornstone

SVN安装

1、首先进入svnbucket.com 这个是svn国内的一个官网

2、点击上面那一排的使用帮助 然后点击TortoiseSVN下载

​ TortoiseSVN-1.14.0.28885-x64…这个是安装包

​ LanguagePack_1.14…这个是汉化包

​ 我的安装在E:/SVN/SVN里面

3、SVN基本操作; 检出 checkout 新增 add 提交 commit 历史记录

4、安装成功的话在桌面鼠标右键会多两个SVN的东西

构建工程

1、在SVNBucket.com里面新建一个工程

2、鼠标右键选中SVN检出复制链接码进行连接

3、看你的文件是否有个绿色的勾勾,如果没有的话重启下电脑就好了

4、提交文件的话就鼠标右键选中SVN提交,选中文件就好了

5、修改了的话就会从绿色的勾变成红色的叉

6、你可以再次提交,在提交的页面双击修改了的文件就会看见修改了的部分

7、提交就好了。

8、鼠标右键选择TortoiseSVN中的显示日志就可以看到你的提交记录和修改记录这些

注意记得经常更新 就是鼠标右键选择SVN更新点击一下就好了

常见操作

撤销和恢复三种

撤销本地修改

​ 1、鼠标右键TortoiseSVN中的SVN还原选择就可以进行撤销

​ 2、在SVN提交的时候双击文件看是否是要正确不需要撤销的文件,如果不是可以鼠标右键那个 文件选择SVN还原进行它的还原

撤销已提交内容

​ 1、可以在日志显示里面进行撤销,右键选择要撤销到的版本选择恢复到此版本

​ 然后在提交就好了

恢复到指定版本

​ 1、和上面撤销已提交内容操作一样

忽略文件

​ 1、鼠标右键TortoiseSVN中的去除版本控制并添加到忽略列表在选择中文件就好了

​ 2、也可以在SVN提交的时候进行右键文件添加到忽略列表就好了

解决冲突

什么情况下容易发生冲突

​ 多个人修改了同个文件的同一行

​ 无法进行合并的二进制文件

怎么避免冲突

​ 经常update同步下他人的代码

​ 二进制文件不要多个人同时操作

冲突了怎么办

​ 解决冲突很简单,不用怕

1、SVN更新发生了冲突右键红色标记,使用他们的文本解决冲突还有个使用我的解决冲突的文件

2、点击编辑冲突,mine是我修改的版本 thsirs是别的版本 下面还有合并后的文件 然后你根据 这些文件进行冲突的解决,可以修改,然后右键使用此文本块 下面合并后的就会变成绿色的

分支

什么时候需要开分支

​ 隔离线上版本和开发版本

​ 大功能开发,不想影响到其他人,自己独立开个分支去开发

SVN经典目录结构

trunk 主干

​ 主要存放一些开发中的文件,我们一般主要是在主干上进行开放。

branches 分支

​ 开放完成后的各个分支存放在这里面。

tags 标签

暂存

有什么用?

​ 代码改了很多,突然需要紧急修复一个bug,但是代码还没写完,不能提交。

​ 代码重构了很多,突然需要发布新版本,但是代码还跑不起来,不能提交。

​ 1、鼠标右键TortoiseSVN可以选择暂存可以进行暂存。

​ 2、鼠标右键TortoiseSVN可以选择取消暂存可以进行暂存。

复杂的代码合并

情况:

​ 主干开发新功能,改了很多

​ 分支是线上版本,修复了很多bug

​ 两个分支的代码时间久了差异很大,无法直接分支合并或者指定提交记录合并代码

​ 使用BeyondCompare

GitLab

GitLab的了解

Git是什么

​ 版本控制 是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一,是一种方便查看历史更改记录,备份及便恢复以前的不按包的软件工程技术。

​ 简单说就是用于管理多人协同开发项目的技术

​ 如果忽视版本控制将产生诸多问题,如软件代码的一致性,软件内容的冗余、软件过程的事务性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题

Git Flow基本概念

master 分支 即生产版本分支,要谨慎对待

develop 分支

feature 分支,即新特性分支,从develop创建 每个新特性度需要开一个新分支

release 分支,从develop创建 可以理解为要发布时创建的分支

hotflx 分支,从master创建 在master上修改bug等进行创建的分支

GitLab简介

​ GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务

​ Gitlab拥有与Github类似的功能,不同在于Gitlab创建private仓库不需收费

​ Gitlab:https://gitlab.com/

所有命令

1、git命令

git commit; 提交分支


git branch; 创建分支


git checkout ; 切换分支


git checkout -b 创建并切换分支


git merge ;合并分支 把这个分支合并到当前分支


git rebase ;合并分支 把这个分支合并到当前分支,更加清晰,保留之前的流程线


如果想看HEAD指向,可通过cat .git/HEAD查看,如果HEAD指向的是一个引用,还可以用

​ git symbolic-ref HEAD 查看它的指向。


git checkout 节点名 切HEAD指向

git checkout main^ 相当于main 的父节点。;git checkout~<num> 一次切到他的上num个节点


git branch -f main HEAD~3
上面的命令会将 main 分支强制指向 HEAD 的第 3 级父提交。

git reset 指向;git revert 指向;  //都是 撤销变更
git reset 指向; 这个撤销就本地的,相当于会到之前的 指向 这个地方,之后的提交就不见了
git revert 指向; 形成一个新的提交,代码和指向相同,远程也有效,推荐使用。

git cherry-pick, 命令形式为:

  • git cherry-pick <提交号>...

如果你想将一些提交复制到当前所在的位置(HEAD)下面的话, Cherry-pick 是最直接的方式了。我个人非常喜欢 cherry-pick,因为它特别简单。

git cherry-pick c1 c2; 就可以把c1 c2抓过来放到当前分支


交互式 rebase 指的是使用带参数 --interactive 的 rebase 命令, 简写为 -i

如果你在命令后增加了这个选项, Git 会打开一个 UI 界面并列出将要被复制到目标分支的备选提交记录,它还会显示每个提交记录的哈希值和提交说明,提交说明有助于你理解这个提交进行了哪些更改。

在实际使用时,所谓的 UI 窗口一般会在文本编辑器 —— 如 Vim —— 中打开一个文件。 考虑到课程的初衷,我弄了一个对话框来模拟这些操作。

当 rebase UI界面打开时, 你能做3件事:

  • 调整提交记录的顺序(通过鼠标拖放来完成)
  • 删除你不想要的提交(通过切换 pick 的状态来完成,关闭就意味着你不想要这个提交记录)
  • 合并提交。

git rebase -i HEAD~4; HEAD~4是范围位置; Pick是不要的,Omit是要的;


git tag v1 C1; v1代表标签,C1代表 指向

很容易吧!我们将这个标签命名为 v1,并且明确地让它指向提交记录 C1,如果你不指定提交记录,Git 会用 HEAD 所指向的位置。


由于标签在代码库中起着“锚点”的作用,Git 还为此专门设计了一个命令用来描述离你最近的锚点(也就是标签),它就是 git describe

Git Describe 能帮你在提交历史中移动了多次以后找到方向;当你用 git bisect(一个查找产生 Bug 的提交记录的指令)找到某个提交记录时,或者是当你坐在你那刚刚度假回来的同事的电脑前时, 可能会用到这个命令。

git describe 的语法是:

git describe <ref>

<ref> 可以是任何能被 Git 识别成提交记录的引用,如果你没有指定的话,Git 会以你目前所检出的位置(HEAD)。

它输出的结果是这样的:

<tag>_<numCommits>_g<hash>

tag 表示的是离 ref 最近的标签, numCommits 是表示这个 reftag 相差有多少个提交记录, hash 表示的是你所给定的 ref 所表示的提交记录哈希值的前几位。

ref 提交记录上有某个标签时,则只输出标签名称

show solution


如何从远程仓库获取数据 —— 命令如其名,它就是 git fetch

git fetch 实际上将本地仓库中的远程分支更新成了远程仓库相应分支最新的状态

git fetch 并不会改变你本地仓库的状态。它不会更新你的 main 分支,也不会修改你磁盘上的文件。

理解这一点很重要,因为许多开发人员误以为执行了 git fetch 以后,他们本地仓库就与远程仓库同步了。它可能已经将进行这一操作所需的所有数据都下载了下来,但是并没有修改你本地的文件。

什么是GIT,以及git的常见命令相关推荐

  1. git status清空_Git常见命令和遇到问题的解决办法

    一.Git整体理解 Git代码管理是分布式管理方式系统,优点在于其极高的安全性和非常强大的分支管理. image.png 工作区(working directory): 就是本地的代码区,电脑能看到的 ...

  2. Git基础操作及常见命令——详解

    这是我看了一些大牛们讲解之后做了一下总结,其中讲解较为详细的是廖雪峰的Git讲解 目录 Git的简介 Git的安装 创建仓库 编辑文件 修改文件 查看修改记录 撤销修改 删除文件 连接GitHub 分 ...

  3. git配置及常见命令

    首先我们需要本地Git与远程GitHub连接的建立,只有将Git本地与远程的GitHub建立了连接以后我们本地的项目才能上传至远程服务器 ** 配置流程: ** 1.在git中配置全局的github账 ...

  4. gitee仓库创建和git一些常见命令

     目录 一.gitee仓库创建 1.1 注册一个gitee账号 1.2 创建一个仓库 1.3 完善仓库 二.git的一些常见命令 2.1 git介绍 2.2 git 命令 一.gitee仓库创建 1. ...

  5. Redis和Git的常见命令

    Redis和Git的常见命令 key命令 String类型命令 list类型命令 set 类型命令 hash 类型命令 zset类型命令 Git 常 使 用 的 命 令 Git 分支常见命令 Gith ...

  6. git 常见命令,规范 整理

    move commit to stage area(把本地的1个commit还原到 暂存区) git reset --soft HEAD~1 把其他的commit的合并到现在到分支:git cherr ...

  7. Git复习(十一)之常见命令用法

    创建版本库 git init 进入一个文件,执行该命令此时目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了. ...

  8. 【F2C】git常见命令

    说明 本篇内容是博主在学习工作过程中常常用到的一些git操作命令,可作为一个参考手册用,毕竟命令这么多也记不住.同时也记录了踩过的一些坑-_-! 以后有时间会整理对git的理解以及正确的使用方法,咕咕 ...

  9. git常见命令和更新、发布

    git常使用的命令 1.git init -在当前目录新建一个代码库. 2. git config user.name=""git config user.email=" ...

最新文章

  1. java 反射获取泛型,用反射获取Java中的泛型参数的类型
  2. C++设计模式之工厂方法模式
  3. RabbitMQ入门(四)-Routing(路由)
  4. 第十章 动态选路协议
  5. ubuntu下定时任务的执行
  6. NachOS简述和源文件
  7. pytorch 动态图机制
  8. cornerstone图标含义
  9. 今日干货:PDF转Word工具有哪些?
  10. 绿色风格资格证书学校培训机构网站源码 织梦dedecms模板 带手机版
  11. 2011年中国大陆十佳IC设计公司
  12. [源码解析]ESPnet脚本源码解析-aishell-asr.sh
  13. 【历史上的今天】3 月 11 日:谷歌推出 Google Voice;互联网先驱诞生日;Foursquare 上线
  14. 拓扑学 计算机领域,吴国平: 拓扑学到底有多重要? 在数学中占据多高的地位?...
  15. Squid缓存服务器原理与实战演练
  16. 金山现任CEO张宏江将退休 西山居CEO继任
  17. python——tensorflow使用和两层全连接神经网络搭建
  18. 数据库设计---PowerDesigner(物理模型和概念模型)
  19. [我的世界]c++实现二维我的世界
  20. nCode:DesignLife案例教程四

热门文章

  1. 没用东西全部清掉_电脑怎么清空所有垃圾东西
  2. 面试技术岗失败后,我才知道老板最看重什么……谨以此文助攻各位
  3. 互联网医疗诊断将受到严格限制 灰色地带再难被平台利用
  4. 不要在 MySQL 中使用“utf8”,请使用“utf8mb4”
  5. HTML5+CSS大作业——汽车世界(6页) 关于制作汽车网页主题论述
  6. mysql executequery返回值_statement.executeQuery(sql)
  7. 数据分析师常用的商业模型
  8. 实战python设计模式_Python与设计模式之创建型模式及实战
  9. 疫情反复下,5个营销动作让日化线下门店销量平稳微增
  10. 关于高可用,我们关注得好像有点窄