git浅谈

一:什么是 git

git一种开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
下图是 git 的一个工作流程简图
在这里插入图片描述

二:什么是 分布/集中式版本控制系统

软件开发过程中,要解决多人协作的问题,需要有一个版本控制系统,用来合并和管理多人对同一个项目的开发和修改。
集中式版本控制系统,CVCS(Centrailized Version Control System)顾名思义,是把代码的管理和同步放在同一个服务器端来进行,如CVS,SVN,由于有完善的权限系统,以及统一的服务端,适合商业软件的开发。
分布式版本控制系统,DVCS(Distributed Version Control System),则相当于把集中式版本控制系统的服务端和客户端都交给参与开发的客户端来保管,只有需要不同开发者合并代码时,才需要一个中转站来完成。

三:什么是 svn

是一种集中式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。下图是 svn 的一个工作流程简图。
在这里插入图片描述
svn 和 git 的一些区别
1.git 是分布式版本控制系统;svn 是集中式版本控制系统
2.git 没有中央服务器,每位开发者的终端都有一个完整的版本库;svn 的版本库是集中存放在中央服务器的
3.git 可以离线工作;svn 无法离线工作
4.git 操作较复杂,保密性不高;svn 操作较简单,保密性较高

四:如何在 window 中安装 git

4.1 在git官网下载 地址( https://git-scm.com/download/win)
在这里插入图片描述 4.2 安装步骤
(4.2.1)点击刚刚下载好的exe文件
在这里插入图片描述
(4.2.2)我个人在本次安装中不做更改,全部按照默认选项,直接 Next,安装完成。在这里插入图片描述
(4.2.3)安装完成后点击鼠标右键,菜单栏会出现 Git GUI Here 和 Git Bash Here 两个选项
在这里插入图片描述
(4.2.4)运行 Git Bash Here ,将会出现如下结果
在这里插入图片描述

五:什么是 GitHub,它和Git的区别是什么

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。简单来说就是个网站。这个网站上有许许多多程序爱好者以及国内外一些知名的网络公司上传的开源代码等等,是一个学习交流的平台。我们可以在GitHub上注册一个账号,通过这个账号我们也可以分享自己编写的代码。
Git 是一个版本管理工具。简单来说就是用来记录变化的工具。比如自己对程序做出了修改,git就会对这次的文件和上次的文件进行比较,然后记录并保存这种变化。git 一个最重要的功能就是版本回退,它能根据这些保存的变化对文件进行还原。

六:如何使用 GitHub 和 Git

6.1 注册 GitHub 账号 ( https://github.com/)
(6.1.1)依次填写信息后提交在这里插入图片描述
6.2 在GitHub上新建一个项目
(6.2.1)依据提示注册成功后重新进入,并新建一个项目
在这里插入图片描述
(6.2.2)填写库名,并选择是否公开,点击 创建
在这里插入图片描述
(6.2.3)保留下面这个页面,我们等下需要用到这个页面的信息
在这里插入图片描述
6.3 回到桌面,打开 Git Bush
(6.3.1)使用如下命令进行一些全局配置
A. git config --global user.name “git名”
B. git config --global user.email “git邮箱”
C. git config --global --list
在这里插入图片描述
(6.3.2)使用如下命令在本地创建项目并初始化
A. cd d: (返回d盘)
B. mkdir GitCenter (创建一个名为 GitCenter 的文件夹)
C. pwd (查看文件夹路径)
D. git init (使用初始化这个文件夹)
在这里插入图片描述
E. 可以看到 GitCenter 文件夹内会多出一个 .git 文件
在这里插入图片描述
6.4 我们先来测试一下 git 的功能
(6.4.1)在 GitCenter 中新建一个txt文件,写入内容 在这里插入图片描述
(6.4.2)打开 Git Bush ,使用如下命令
A. git add “test.txt” ( 提交文件至暂存区 )
B. git commit -m “第一次提交” ( 提交文件至本地仓库 )
在这里插入图片描述
(6.4.3)查看 commit 状态
A. git status ( 下面表示刚刚的文件提交成功,工作树很干净 )
在这里插入图片描述
B. 如果我们改动( 修改、删除等 )txt文档后,再使用 git stutes 命令,就会出现如下提示信息
在这里插入图片描述
(6.4.4)查看 文件内容有哪些改动
A. git diff 文件名 ( 可以看到文件内容有哪些改动 )
在这里插入图片描述
B. 继续使用 git add 和 git commit 这两个命令,把这个改动保存提交上去
在这里插入图片描述
(6.4.5)版本回退
A. git log ( 查看日志 )
在这里插入图片描述
B. git reset --hard HEAD^ ( 想回退几个版本呢就在HEAD后添加几个 ^ 符 )
C. git reset --hard 434ea91(回退指定版本)
在这里插入图片描述
(6.4.6)删除功能
A. rm test.txt ( 删除文件 )
在这里插入图片描述
在这里插入图片描述
6.5 把 Git建立的本地仓库 和 GitHub建立的远程仓库 关联在一起
(6.5.1)关联远程仓库,把上面那个 GitHub远程仓库地址复制过来
A. git remote add orgin https://github.com/ResumeMy/GitCenter.git
在这里插入图片描述
B. 第一次链接远程仓库需要输入 GitHub 的账号密码
在这里插入图片描述
(6.5.2)将本地仓库内容推送至远程仓库
A. git push -u orgin master ( 第一次推送至 master )
在这里插入图片描述
B. 再进入 GitHub 发现已经推送上来了
在这里插入图片描述
(6.5.3)在远程仓库建立分支,并将远程分支更新至本地
A. 直接在 GitHub 上创建分支
在这里插入图片描述
A1. 此时,master 和 新建分支(名:each)的内容一致
A2. 我更改本地文件 first.txt 内容,并推送至 master
A3. 这时,本地内容是新的,master 内容是新的,each 内容是旧的

B. git pull orgin each ( 把上面创建的each分支更新至本地 )
在这里插入图片描述
B1. 这时,本地和远程都有 master 和 each分支
C. git checkout each ( 本地由 master 切换至 each 分支 )
在这里插入图片描述
D. 此时我们打开 first.txt 文件,发现文件内容是 旧的 (each分支)
在这里插入图片描述
E. git checkout master ( 由 each分支 切换回 master )
在这里插入图片描述
F. 此时我们再打开 first.txt 文件,发现文件内容是 最新的 (master)
在这里插入图片描述
(6.5.4)在本地创建分支,并将分支更新至远程仓库
A. git branch other ( 在本地创建一个 other 分支 )
B. git checkout other ( 切换至 other 分支 )
C. git checkout -b other ( A 和 B 可以合并为 C )
D. git push orgin other ( 本地新建分支 other 被推送至 远程仓库 )
在这里插入图片描述
在这里插入图片描述
七:部分 Git命令
在这里插入图片描述
此图片转自 csdn博客,地址: https://blog.csdn.net/easy_purple/article/details/88064394

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值