Git概念、命令及项目部署(另外补充常用的Linux命令)
前言
学习Git的目标是要学会如何部署项目。Git是一种版本控制系统,与之对应的还有CVS和SVN,其中CVS和SVN都是集中式的版本控制,而Git是一种分布式的,在现代项目开发中,大多使用Git来管理项目。当前有的公司仍然使用SVN。这个可以根据团队项目需求来选择使用哪种版本控制管理项目。下面简单介绍使用Git部署项目时,用到的一些简单命令,供大家一起学习参考。
具体内容
一、下载并安装Git
在Git官网上可以下载,地址:https://git-scm.com/;下载完成后,与普通软件的安装类似。
安装完成后,在本机上右键菜单中,会显示有"Git Bash Here"和"Git GUI Here"
二、相关命令的使用及说明
1、 配置用户名和密码
在首次下载安装完成后,需要先配置用户名和邮箱,避免在每一次操作时,Git都将提示用户输入。只需要执行以下两条命令即可:
$ git config --global user.name “wangqin”
$ git config –global user.email “wqbistu@163.com”
PS:--global参数表示本机上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
2、生成SSH key
Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要进行SSH配置。在完成用户名和邮箱配置之后,使用如下命令生成SSH Key:
$ ssh-keygen
注意:在生成SSH key之前,可以先查看是否已经存在ssh密钥。这个密钥文件夹名为”.ssh”,保存在计算机用户目录下,”id_rsa.pub”该文件内容即为ssh密钥。复制该内容,打开Github,点击”Settings”->”SSH Keys”,在这里进行配置,添加SSH Key。
3、克隆
当我们想把Github上的开源项目下载到本地开发时,我们可以使用这条命令:
$ git clone https://gitee.com/lindeyi/vue-cron.git
注意:这种开源的项目我们只能下载,修改过后,不能在push到原来的Git上了。
4、git status
该命令可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件。在每次提交之前,执行一下此命令是必要的。
5、git add
该命令的功能是将工作区内容添加到暂存区;主要包括三条命令:
git add . 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
git add -u 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add -a 提交所有变化
6、git commit
git commit -m "提交说明"
该命令的功能是将暂存区内容添加到版本库
7、git push origin developer
该命令的功能是将当前分支推送到origin主机的对应分支。
8、git init
该命令的功能是创建一个空的Git仓库或重新初始化一个现有仓库 。
============================================
补充
在使用命令操作文件时,难免会用到一些Linux下的常用命令,下面进行简单介绍:
(1)cd 进入目录
cd . 进入当前目录
cd .. 进入上一级目录
cd ~ 进入用户目录
注意:全局安装的包、模块等均保存在用户目录下
(AppData->Roaming->npm->node_modules)
(2)tab 命令补全功能
(3)ls 查看目录下的文件
ls -l 查看详细信息
ls -a 查看所有的文件
(4)mkdir 创建文件夹
(5)touch 创建一个文件
(6)echo 创建一个带内容的文件
eg: echo 'hello world' > hello.txt
(7)vi/vim 编辑文件
eg: vim hello.txt //编辑或修改文件
eg: vim abc.txt //新建文件
vi是Linux上的编辑器,vim是增强版
Sublime默认安装了vim插件
(8)cat 查看文件内容
(9)rmdir 删除文件夹(只能删除空文件夹)
(10)rm 删除文件
rm -r 递归删除
rm -rfv 强制删除 -v 表示以视图方式,在删除时以滚动方式可见
(11)cp 拷贝
eg: cp 当前路径 目标路径
结束语
有关Git操作的命令确实相当多,掌握基本的操作命令并且能熟练进行项目部署尚可;在工作中,需要使用到其他操作命令时,可以借助Git命令详细手册来完成相关操作。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· MySQL下200GB大表备份,利用传输表空间解决停服发版表备份问题
· 记一次 .NET某固高运动卡测试 卡慢分析
· 微服务架构学习与思考:微服务拆分的原则
· 记一次 .NET某云HIS系统 CPU爆高分析
· 如果单表数据量大,只能考虑分库分表吗?
· 7 个最近很火的开源项目「GitHub 热点速览」
· DeepSeekV3:写代码很强了
· 记一次 .NET某固高运动卡测试 卡慢分析
· Visual Studio 2022 v17.13新版发布:强化稳定性和安全,助力 .NET 开发提
· MySQL下200GB大表备份,利用传输表空间解决停服发版表备份问题