分布式版本控制软件Git使用教程——命令行模式

简介: 分布式版本控制软件Git使用教程——命令行模式

前言


本篇博客介绍使用Git Bash命令行模式操作项目进行版本管理。除了Git专属命令外,其余的操作不出其右Linux命令。Git作为一个分布式版本管理系统(DVCS:Distrubuted Version Control System)诞生于2005年,给大家推荐一个Git重要参考资料《精通 Git》1,由就职于 GitHub 公司的 Scott ChaconB 执笔,是一部零基础的 Git 学习资料。

image.png

Git存在的意义在于:


  • 速度
  • 简单的设计
  • 对非线性开发模式的强力支持(允许成千上万个并行开发的分支)
  • 完全分布式
  • 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)


为什么使用命令行模式


Git 有多种使用方式。你可以使用原生的命令行模式,也可以使用 GUI 模式,这些 GUI 软件也能提供多种功能。在本篇博客中,我们将使用命令行模式。这是因为首先,只有在命令行模式下你才能执行Git的所有命令,而大多数的GUI软件只实现了Git所有功能的一个子集以降低操作难度。如果你学会了在命令行下如何操作,那么你在操作GUI软件时应该也不会遇到什么困难,但是,反之则不成立。此外,由于每个人的想法与侧重点不同,不同的人常常会安装不同的 GUI 软件,但所有人一定会有命令行工具。


步骤


1,新建仓库(repository)


在Git Bash窗口中输入以下命令,创建仓库文件夹repository2021,在这个文件夹下存储我们的项目工程文件(即工作树:work tree),这个时候仓库和Git还没有半毛钱关系。

mkdir repository2021

image.png


2,初始化仓库


进入仓库文件夹repository2021内进行仓库的初始化

cd repository2021

image.png

# 仓库初始化
git init
# 查看仓库中的文件
ls -a

image.png

我们发现此时仓库文件夹repository2021中多了.git文件夹,而且在.git文件夹下多了很多的文件,这是Git在初始化仓库时自动创建的,此时Git与仓库文件夹repository2021有了半毛钱的联系。隶属于此仓库下的问价在将来都会被Git托管。


# 进入.git文件夹
cd .git
# 查看.git文件夹下的文件
ls

image.png


3,查看仓库状态


 git status

image.png

从返回结果上看,我们处于master分支,至今未进行提交操作,也没有任何东西能够提交。还提示我们创建或者复制文件并进行git添加操作。


4,新建READ.md文件


# 新建文件
touch READ.md

image.png


5,再次查看仓库状态


git status

image.png

从返回的结果来看,我们处于master分支,至今未进行提交操作,这两行结果和上次查看仓库状态相同。不同的是Git捕捉到了未进行追踪的文件READ.md,同时建议我们进行git添加操作。


6,跟踪文件


添加READ.md文件到仓库暂存区,以便后期的提交操作。暂存区指的是一个文件,保存了下次将提交的文件列表信息。有时候该文件也被称为索引Index。


git add READ.md
git status

image.png

从返回的结果来看,我们处于master分支,至今未进行提交操作,这两行结果和上次查看仓库状态相同。不同的是Git提示我们说有可以被提交的改变。


7,提交文件


该步骤将暂存区的问件实际保存到仓库的历史记录中。


# -m表示<msg>
git commit -m "第一次提交"
git status

image.png


8,查看提交历史记录


git log

image.png

9,查看更改前后区别


# 查看工作树和暂存区的差别
git diff
#  查看工作树和最新提交的差别
git diff HEAD

image.png

可以看出,此时的工作树(项目问件)和暂存区没有区别,因为已经进行了问件增加。


10,添加远程仓库


在Github上新建仓库,名为repository2021

image.png

执行git remote add命令,origin是git@github.com:zbkpointer/repository2021.git的别名,方便下一步的推送,不需要再写这么长的路径。

git remote add origin git@github.com:zbkpointer/repository2021.git

image.png

10.1,在推送至远程仓库前的环境准备


生成公钥和私钥、添加SSH

1666099603286.jpg


11,推送至远程仓库


git push -u origin master

image.png

执行完上述命令后,我们就可以在GitHub网页上查看是否将本地库的文件上传至GitHub上。经查看,我们看到我们创建的READ.md文件已经上传成功至GitHub。

image.png


12,获取最新的远程仓库分支


git pull origin master

image.png


13,删除远程仓库分支


在删除远程仓库main分支时,首先修改GitHub远程仓库默认分支为master,接着键入如下命令即可

git push origin --delete main
相关文章
|
3月前
|
敏捷开发 存储 开发工具
版本控制系统的选择:Git与SVN的比较
【8月更文挑战第14天】Git和SVN都是优秀的版本控制系统,它们各自具有独特的优势和适用场景。在选择版本控制系统时,需要根据具体的项目需求、团队特点和开发模式来综合考量。对于需要分布式团队协作、高效处理大型项目或采用敏捷开发模式的团队来说,Git是一个更好的选择。而对于传统团队、集中式开发或简单项目来说,SVN可能更加合适。无论选择哪种版本控制系统,都应该充分利用其提供的工具和功能来提高代码质量和开发效率。
|
3月前
|
存储 缓存 监控
分布式链路监控系统问题之kywalking在后期维护过程中可能会遇到中间件版本升级的问题如何解决
分布式链路监控系统问题之kywalking在后期维护过程中可能会遇到中间件版本升级的问题如何解决
|
3月前
|
存储 消息中间件 Apache
比较微服务中的分布式事务模式
比较微服务中的分布式事务模式
68 2
|
7天前
|
数据采集 存储 监控
公司监控软件:基于 PHP 的分布式监控系统设计
本文介绍了基于 PHP 的分布式监控系统的设计与实现。该系统包括监控节点、数据采集模块、数据传输模块和监控中心,能够高效地收集、传输和分析各节点的数据,确保系统的稳定运行和安全防护。通过示例代码展示了数据采集、传输及存储的具体实现方法,并强调了安全与可靠性的重要性。
24 3
|
9天前
|
监控
Saga模式在分布式系统中保证事务的隔离性
Saga模式在分布式系统中保证事务的隔离性
|
2月前
|
存储 Linux 开发工具
掌握版本控制的艺术:Git 技巧深度解析
在软件开发中,版本控制对于代码管理和团队协作至关重要。Git 作为最流行的分布式版本控制系统,凭借其强大的功能和灵活性成为开发者必备工具。本文深入探讨 Git 的高级技巧和最佳实践,包括交互式暂存、撤销提交、合并冲突处理等,帮助你更高效地使用 Git。通过遵循清晰的提交信息、保持提交原子性、利用分支开发等最佳实践,开发者可以更好地管理代码库,提升协作效率。
|
1月前
|
存储 缓存 NoSQL
大数据-38 Redis 高并发下的分布式缓存 Redis简介 缓存场景 读写模式 旁路模式 穿透模式 缓存模式 基本概念等
大数据-38 Redis 高并发下的分布式缓存 Redis简介 缓存场景 读写模式 旁路模式 穿透模式 缓存模式 基本概念等
54 4
|
2月前
Saga模式在分布式系统中如何保证事务的隔离性
Saga模式在分布式系统中如何保证事务的隔离性
|
2月前
|
安全 开发工具 git
git合并错了,我想回退到之前的版本
git合并错了,我想回退到之前的版本
|
23天前
|
SQL NoSQL MongoDB
一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程
一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程
39 0
下一篇
无影云桌面