git:一、GIT介绍+安装+全局配置+基础操作

版本管理系统(SVN和Git):

集中式版本控制系统 (SVN)

SVN是集中式版本控制系统,版本库是集中放在中央服务器的.

工作流程如下:

1.从中央服务器远程仓库下载代码

2.修改后将代码提交到中央服务器远程仓库

优缺点:

优点: 简单,易操作

缺点:所有代码必须放在中央服务器

1.服务器一旦宕机无法提交代码,即容错性较差

2.离线无法提交代码,无法及时记录我们的提交行为

分布式版本控制系统 (Git)

Git是分布式版本控制系统(Distributed Version Control System,简称 DVCS),分为两种类型的仓库:本地仓库和远程仓库

工作流程如下

1.从远程仓库中克隆或拉取代码到本地仓库(clone/pull)

2.从本地进行代码修改

3.在提交前先将代码提交到暂存区

4.提交到本地仓库。本地仓库中保存修改的各个历史版本

5.修改完成后,需要和团队成员共享代码时,将代码push到远程仓库

GIT的安装:

官方地址:https://git-scm.com/download

傻瓜式安装即可

GIT的全局配置(用户名+邮件)

设置用户信息

创建一个测试用的文件夹,进入后右键打开Git Bash,设置用户信息

git config --global user.name "shanshan"

git config --global user.name "2021224024@email.szu.edu.cn"

查看用户信息

查看配置信息git config --global user.name git config --global user.name

ATT:设置时的用户名和邮箱前都有空格,如果不设置就查看配置信息,则什么都不会显示。

输出git日志

打开用户目录(C:/用户/34519),创建.bashrc文件,并在里面输入以下内容

复制代码
#用于输出git提交日志 alias git-log='git log --pretty=oneline --all --graph --abbrev-commit' #用于输出当前目录所有文件及基本信息 alias ll='ls -al'

ATT:部分windows系统不允许用户创建点号开头的文件,可以在该用户目录下打开gitBash,执行touch ~/.bashrc

创建的文件名为空,拓展名是bashrc,所以要开启文件的拓展名选项并检查该文件的格式是否为Bash RC源文件。

GIT的基础操作

创建本地仓库

进入工程文件夹后右键打开Git bash窗口,执行命令git init,发现文件夹出现.git目录即说明创建本地仓库成功。

基础流程(最重要)

GIT的流程分为三大块:工作区、暂存区、仓库。

工作区的文件创建或修改后通过git add提交到暂存区,暂存区的文件通过git commit提交到仓库。

通过git status查看三个块的状态。通过touch +文件可以新建文件。git log可以查看历史操作记录。

ATT:只是为了过一遍基础流程,具体的命令细节可以看下一篇博客。

版本回退

git reset --hard commitID

Git reflog 查看已经删除的提交记录

忽略文件

创建.gitignore,里面列出要忽略的文件模式,如:

*.txt

则是忽略所有.txt文件

命令行快捷键

选中即复制,滚轮向上则粘贴。

相关推荐
m0_6948455711 小时前
tinylisp 是什么?超轻量 Lisp 解释器编译与运行教程
服务器·开发语言·云计算·github·lisp
June`11 小时前
muduo项目排查错误+测试
linux·c++·github·muduo网络库
春日见11 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
weixin_66814 小时前
GitHub 2026年AI项目详细数据汇总表-AI分析-分享
人工智能·github
CoderJia程序员甲1 天前
GitHub 热榜项目 - 日榜(2026-02-05)
ai·开源·大模型·github·ai教程
stevenzqzq1 天前
git 常用操作
大数据·git
weixin_6681 天前
GitHub 2026年AI项目热度分析报告-AI分析-分享
人工智能·github
Curvatureflight1 天前
Git工作流最佳实践:从混乱到优雅
git
MicrosoftReactor1 天前
技术速递|GitHub Copilot CLI 斜杠命令速查表
github·copilot·cli
wu~9701 天前
GitHub永不遗忘,使用git push -f来覆盖的提交依旧保留
git·github