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项目

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

2. Git工作流程

1. 本地

  1. 将修改的文件加到缓存区(stage):git add
    如果想把所有的都加进来:git add .
  2. 将缓存区文件放回去:git reset
    回退到指定commit id之前版本的仓库:git reset --hard <指定commit_id>
  3. 从缓存区提交文件到本地仓库:git commit -m "message"1

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 <远程仓库名> <branch>(branch例如master)
    这个代码实际上是两步:
    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文件详解与常见用法

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

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

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

  1. git commit 命令 | 菜鸟教程 ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸神缄默不语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值