【程序员必备】Git从入门到掌握

Git

笔记参考视频:【GeekHour】一小时Git教程

一、概述

  1. 版本管理工具分类:

    • 分布式版本控制系统--Git
    • 集中式版本控制系统--SVN
  2. 版本管理工具区别:

    • 集中式版本控制系统:版本记录存放在服务器,提交的时候版本记录需要从服务器中读取,服务器挂了就完蛋了。
    • 分布式版本控制系统:每台电脑都有一个完整的版本记录,即使服务器挂了也可以先提交到本地版本库,等中央服务器修好了在同步上去。

二、下载

官网:git-scm.com/

三、工作区域介绍

Git 工作区一共有三个:

  1. 本地工作区:我们能看到的文件就是本地工作区

  2. 本地暂存区:一个中间区域,临时存储即将要提交到本地仓库的代码

  3. 本地仓库:包含本地代码和版本信息
    Git的工作流程

  4. 文件在工作区修改完成后使用git add提交到暂存区

  5. 确认暂存区的文件需要提交到本次仓库后,使用git commit提交的到本地仓库

四、Git管理文件的四个状态

  • 未跟踪:文件没有被Git管理起来的文件,这些文件修改,不会有版本记录
  • 未修改:文件已经被Git进行版本管理,但是文件内容没有变化
  • 已修改:文件已经被Git进行版本管理,且文件内容有变化,同时还没有提交到暂存区的文件
  • 已暂存:文件修改后,被添加到暂存区内的文件

四、基本使用

1.初始化 Git 设置

设置这些属性可以区分代码是谁提交的

shell 复制代码
#配置用户名
git config --global user.name "用户名"
#配置邮箱
git config --global user.email "邮箱"
#存储配置(没必要弄,可以略过)
git config --global credential.helper store
#查看配置信息
git config list --global

2.初始化仓库

Git 初始化仓库有两种方式:

  1. 本地新建仓库
  2. 克隆远程仓库
shell 复制代码
#方式一:本地新建仓库
git init [仓库地址]


#方式二:克隆仓库
git clone git仓库地址

#案例:
	#案例1:在当前文件夹新建仓库
		git init 
	#案例2:在指定文件夹新建仓库,如果文件夹不存在就创建文件夹
		git init ./project/cangqiongwaimai
	#案例3:拉取远程仓库
		git clone https://github.com/deepseek-ai/DeepSeek-V3.git

3.本地仓库操作

shell 复制代码
#查看仓库状态[可以查看当前仓库的基本信息:是哪个分支,有哪些文件,这些文件的状态]
git status

#将本地修改的文件从工作区提交到暂存区[红色文件:已修改,未暂存  绿色文件:已修改,已暂存]
	#方式一:添加指定文件
	git add [需要提交的文件名]
	#方式二:添加当前目录下所有未被忽略管理的文件
	git add . 
	#方式三:以通配符方式添加【例如:只添加以.txt结尾的】
	git add *.txt

#将暂存区中的文件从暂存区中删除
git rm --cached 文件名

#将暂存区中的文件提交到本地仓库[只会提交暂存区中的文件,不会提交没有添加到暂存区中的文件]
git commit -m '本次提交描述'

#查看本地仓库提交记录
git log

#案例:
	#第一步:在仓库中创建一个文件 1.txt 随便输入一点内容
	#第二步:查看仓库状态,可以看到有一个红色的文件
		git status
	#第三步:将文件添加到本地暂存区
		git add 1.txt
		或者
		git add .
	#第四步:查看仓库状态,可以看到有一个绿色的文件
		git status
	#第五步:将暂存区中的文件提交到本地仓库
		git commit -m '提交了1.txt文件'

‍

相关推荐
Tairitsu_H5 小时前
[版本控制器Git] Git 远程仓库 | 多人协作 | 企业级 Git Flow 开发模型
git·版本控制器·远程仓库
我先去打把游戏先5 小时前
Git-Rebase使用指南-从原理到实战
服务器·git·嵌入式硬件·物联网·ubuntu
kaixin_learn_qt_ing8 小时前
我有两个程序,它们在不同的项目中,但是它们复用了一部分头文件,它们在两个不同的git仓库中,有什么好的办法可以让它们复用吗?
git
greatofdream9 小时前
git rebase时如何解决merge节点冲突问题
大数据·git·elasticsearch
敲敲敲-敲代码1 天前
git安装记录
git
我是人✓1 天前
Git入门:从零开始掌握分布式版本控制
分布式·git
Aurora_eye1 天前
Git 笔记
笔记·git
解道Jdon1 天前
FigCraft把Figma用Rust从零重写了一遍
ide·windows·git·svn·eclipse·github·visual studio
橙橙笔记1 天前
QT安卓软件的制作
android·git·qt·软件
我是人✓1 天前
Git远程协作与标签管理全攻略
git