当前位置: 首页 > news >正文

Git命令行入门

诸神缄默不语-个人CSDN博文目录

之前写过一篇VSCode + Git的博文:VSCode上的Git使用手记(持续更新ing…)

现在随着开发经历增加,感觉用到命令行之类复杂功能的机会越来越多了,所以我专门再写一篇Git命令行的文章。

Git官网:https://git-scm.com/

Git下载和安装过程挺简单的,我下次再在新电脑上安Git的时候再专门写一篇博文。

在正常使用Git之前需要先配置用户名和邮箱:

git config --global user.name "您的用户名"
git config --global user.email "您的邮箱"

Git命令可以在cmd中执行,也可以在Git bash中执行。跟cmd一样,直接在文件浏览器地址栏输入git bash就能在打开该路径下的Git bash。
我个人的体验是Git bash比cmd好用。

文章目录

  • 1. 初始化Git项目
  • 2. Git工作流程
    • 1. 本地
    • 2. 远程
  • 3. 搭建本地Git服务器流程
  • 4. Off-the-shelf Git服务器
  • 5. 忽略当前文件夹中的指定文件:.gitignore
  • 5. 修改Git bash文本编码格式

1. 初始化Git项目

git init:运行后就会开始版本管理这个文件夹

2. Git工作流程

1. 本地

  1. 将修改的文件加到缓存区(stage):git add
  2. 将缓存区文件放回去:git reset
    回退到指定commit id之前版本的仓库:git reset --hard <指定commit_id>
  3. 从缓存区提交文件到本地仓库:git commit

2. 远程

GitHub上处理私有仓库需要配置秘钥,这部分可参考:https://blog.csdn.net/PolarisRisingWar/article/details/144669022

  1. 添加远程仓库:git remote add <远程仓库名> <仓库URL>
    origin是远程仓库的默认名称
  2. 修改远程仓库URL:git remote set-url <远程仓库名> <新仓库URL>
  3. 从远程仓库拉取代码版本到本地并进行合并:git pull
    这个代码实际上是两步:
    1. git fetch:从远程仓库拉取代码版本(就是知道一下远程有什么本地没有的东西)
    2. git merge:将远程仓库的代码版本合并到本地仓库
    3. 合并二进制文件冲突的问题可参考我写的另一篇博文来解决:https://blog.csdn.net/PolarisRisingWar/article/details/138790764
  4. git push <远程仓库名> <branch>:把本地代码推送到远程仓库
    示例:git push origin master
  5. git clone:将Git服务器管理的仓库直接拉到本地
    用SSH克隆的教程可参考我写的另一篇博文:https://blog.csdn.net/PolarisRisingWar/article/details/132713802
  6. 设置代理(主要是用于GitHub):
    git config --global http.proxy IPv4地址:7890
    git config --global https.proxy IPv4地址:7890
    
  7. 删除代理:
    git config --global --unset http.proxy
    git config --global --unset https.proxy
    

3. 搭建本地Git服务器流程

因为普通的仓库有工作目录,不适合直接作为服务器接收push,所以需要设置一个裸仓库(bare repository)。
裸仓库没有工作目录,更适合作为中央仓库。
用一个空文件夹作为裸仓库:git init --bare D:\proj1_bare.git

如果出现如下报错信息:

'git-receive-pack' 不是内部或外部命令,也不是可运行的程序或批处理文件。

将Git安装路径中的Git\mingw64\bin(即git-receive-pack.exe文件所处的文件夹)的路径添加到系统变量Path中。添加系统变量这事我好像在Java安装之类的博文里面写好几遍了,此略。

我之前本来想研究一下搭建远程服务器的,但是一直没搞出来,总之如果在本地的话直接就可以:
在本地仓库中:git remote add bare_repo D:\proj1_bare.git 添加远程仓库
在其他文件夹中就可以正常实现各种Git远程仓库的相关功能了:git clone D:\proj1_bare.git

4. Off-the-shelf Git服务器

  1. Git Daemon
  2. https://gitlab.cn/install/
  3. Gitea
  4. Gitee
  5. Gogs
  6. Gitblit
  7. https://gitstack.com/:Windows服务器

5. 忽略当前文件夹中的指定文件:.gitignore

就是新建一个文本文件,命名为.gitignore,在里面写的文件/文件夹就不会被Git追踪。

我之前专门写过.gitignore文件的教程:Git的.gitignore文件详解与常见用法

5. 修改Git bash文本编码格式

当出现中文乱码的时候会用得到的:

  1. 在git bash标题栏右键,点击Options
    在这里插入图片描述
  2. 进入Text,Character Set选择GBK:在这里插入图片描述

http://www.mrgr.cn/news/91583.html

相关文章:

  • 有向图的强连通分量: Kosaraju算法和Tarjan算法详解
  • 解锁机器学习核心算法|主成分分析(PCA):降维的魔法棒
  • 如何写架构设计⽂档
  • Flutter - 初体验
  • Django 连接(sqlserver)数据库方法
  • C# 背景 透明 抗锯齿 (效果完美)
  • 基于Flask的第七次人口普查数据分析系统的设计与实现
  • 整理一些安装环境的常用命令
  • python的类与对象。为什么有些东西要用到类和对象。普通的编程方式不行吗?
  • 电容的温度系数分析
  • CSDN文章质量分查询系统【赠python爬虫、提分攻略】
  • javaSE学习笔记23-线程(thread)-总结
  • JavaScript中判断元素是否在可视区域内
  • 机器学习实战(7):聚类算法——发现数据中的隐藏模式
  • deepseek-r1系列模型部署分别需要的最低硬件配置
  • frameworks 之 Activity添加View
  • 【愚公系列】《Python网络爬虫从入门到精通》022-Splash的爬虫应用
  • C++17 中的 std::uncaught_exceptions:异常处理的新利器
  • 数学推理中在推理规模化下检查假阳性解
  • Windows 图形显示驱动开发-IoMmu 模型