Git基础入门

简介: Git基础入门

1、Git的基础概念


Git中的三种状态


1.已修改modified

工作区的文件被修改了,但是还没有放到暂存区,就是已修改的状态

2.已暂存staged

如果文件已修改并放入了暂存区,就属于已暂存的状态了

3.已提交committed

如果git仓库中保存着特定版本的文件,就是属于已提交的状态了


基本的Git工作流程


image.pngimage.pngimage.pngimage.pngimage.pngimage.png

image.png

2、安装并配置Git


安装Git之后,要做的第一件事就是配置自己的用户名和邮箱地址。

基本操作:

git config --global user.name"//(写自己用户名)"
git config --global user.email"//(写自己邮箱)"

注意:如果使用了–global选项,那么该命令只需运行一次


  • 通过用git config --global user.name和git config --global user.email配置的用户名和邮箱地址,会被写入到C:/Users/用户名文件夹/.gitconfig文件中,这个文件是全局配置文件,配置一次即可永久生效。
  • 可以运行一下终端命令查看全局配置信息
//查看所有的全局配置项
git config --list --global
//查看指定的全局配置项
git config user.name
git config user.email

可以使用git help命令,无需联网即可在浏览器打开帮助手册


3、Git的基本操作


获取Git仓库的两种方式


  1. 将尚未进行版本控制的本地目录转换为Git仓库
  2. 从其他服务器上克隆一个已经的Git仓库


在现有目录中初始化仓库


如果自己有一个尚未进行版本控制的项目目录,想要用Git来控制它,需要执行一下两个步骤:


  1. 在项目目录中,通过鼠标右键打开“Git Bash”
  2. 执行git init命令将当前目录转化为Git仓库


工作区中文件的4中状态


image.png

检查文件的状态


可以使用git status 命令查看文件处于什么状态

git status的精简等价命令是git status --s或者是git status --short

例如:

微信图片_20221009170352.png

出现Untracked file的文件意味着Git之前的快照中没有这些文件,Git不会自动将其自动纳入跟踪范围。


跟踪新文件


使用git add 开始跟踪一个文件。

运行以下命令:



提交更新


此时暂存区中有一个hello.js文件等待被提交到Git仓库中进行保存,可以执行 git commit 命令进行提交,其中 -m选项后面是本次提交消息,用来对提交的内容做进一步的描述。

运行以下命令:



暂存已修改的文件


目前,工作区中的hello.js文件已经被修改,如果暂存这次修改需要再次运行git add 命令,这个命令是多个功能的命令,主要有三个功效


  1. 可以用它开始跟踪新文件
  2. 把已跟踪的、且已修改的文件放到暂存区
  3. 把有冲突的文件标记为已解决状态


撤销对文件的修改


运行 git checkout 命令可以还原成Git仓库中所保存的版本

注意:所有的修改会丢失,且无法恢复,危险性较高,请谨慎操作


向暂存区中一次性添加多个文件


如果需要被暂存的文件个数较多,可以使用 git add . 命令,一次性将所有的新增和修改过的文件加入暂存区.


取消暂存去中的文件


如果需要从暂存区中移除对应的文件,可以使用 git reset HEAD 要移除的文件名称 命令


移除文件


从Git仓库中移除文件有两种方式


  1. 从Git仓库和工作区中同时移除对应文件
  2. 只从Git仓库中移除指定文件,但保留工作区中对应的文件


忽略文件

一般我们总会有些文件不需要纳入Git管理,也不希望它们总出现在未跟踪文件列表。在这种情况下,我们可以创建一个名为 .gitnore 的配置文件,列出要忽略的文件的匹配模式

文件 .gitnore 的格式规范如下:


  • 以 #开头的是注释
  • 以 /结尾的是目录
  • 以 /开头防止递归
  • 以 !开头表示取反
  • 可以使用glob模式进行文件和文件夹的匹配


4、Git本地分支操作


分支的概念


分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。在某个时间点,两个平行宇宙合并了,结果,你就既学会了Git又学会了SVN。


master主分支


在初始化本地仓库Git的时候,Git已经默认帮我们创建了一个名字是master的分支,通常我们把master分支叫做主分支。

在实际工作中,master主分支的作用是:用来保存和记录整个项目已完成的功能代码


功能分支


由于程序员不能直接在master分支上进行功能的开发,所有就有了功能分支的概念,功能分支指的是专门用来开发新功能的分支,它是从master的主分支上分叉出来的,当新功能开发且测试完毕后,最终需要合并到master主分支上。


查看分支列表


查看当前Git仓库的分支列表,可以使用 git branch 命令。


注意:分支名字前的 * 号表示当前所处的分支。


创建新分支


使用 git branch 分支名称 命令可以基于当前分支,创建一个新的分支,此时,新分支中的代码和当前分支完全一样。


切换分支


使用git checkout 分支名称命令可以切换到指定分支进行开发


分支合并


功能分支的代码测试完毕之后,可以使用 git checkout msater和git merge 分支名称将完成后的代码合并到master分支上。


注意:假设要把C分支的代码合并到A分支上,则必须先切换到A分支上,在运行git merger 命令来合并C分支。


跟踪分支


跟踪分支指的是:从远程仓库中,把远程分支下载到本地仓库中。运行如下命令

//从远程仓库中,把对应远程分支下载到本地仓库中,保持本地分支和远程分支一致
git checkout 分支名称
//从远程仓库中,把对应的远程分支下载到本地仓库,并把下载的本地分支进行重命
git checkouut -b 本地仓库分支名称 远程仓库名称/远程分支名称


相关文章
|
29天前
|
开发工具 git 索引
【git】入门
【git】入门
42 2
|
29天前
|
Shell Linux 开发工具
Git入门(windows系统)
Git入门(windows系统)
48 1
|
7月前
|
存储 算法 开发工具
Git的入门详细教程
Git的入门详细教程
|
7月前
|
存储 Shell Linux
Git 入门使用
Git 入门使用
73 0
|
29天前
|
开发工具 git 开发者
Git入门:轻松掌握版本控制的艺术
【5月更文挑战第13天】Git是流行的版本控制系统,适合各种规模的项目。本文引导读者入门Git,学习版本控制艺术。内容涵盖Git简介、安装配置、基础操作(如初始化、添加文件、提交、查看状态和历史)、分支管理、协作开发(克隆、推送、拉取)及高级用法,如标签管理、子模块和版本比较。遵循最佳实践,如频繁提交、有意义的提交信息和合理分支管理,可提升开发效率。
|
29天前
|
数据可视化 开发工具 git
Git代码版本管理入门
Git代码版本管理入门
|
7月前
|
存储 Shell 开发工具
【Git】Git安装入门使用&常用命令&Gitee远程仓库上传文件与下载
【Git】Git安装入门使用&常用命令&Gitee远程仓库上传文件与下载
107 0
|
29天前
|
程序员 开发工具 git
好程序员Git入门到精通教程
本课程主要通过命令行和idea来介绍Git的安装、仓库创建、工作流、远程仓库、克隆仓库、标签管理和分支管理等Git的主要内容。 另外关于GitHub的使用介绍也有完整的说明和使用,接轨生产环境使用方式。
13 1
好程序员Git入门到精通教程
|
29天前
|
存储 持续交付 开发工具
Git操作入门
Git是一个的开源分布式版本控制系统,它已经被广泛应用于软件开发、文档管理、代码托管等领域,成为当今最流行的版本控制系统之一。Git通过高效地管理文件的变化,使得团队协作更加高效,错误率更低。本文将介绍Git的工作原理、基本命令和常见用法等内容。
25 0
Git操作入门
|
29天前
|
缓存 Java 开发工具
[Git]入门及其常用命令
创作本篇文章的初衷,是为了方便大家回顾git常用命令和使用细节,而不用查阅大量资源寻找。同时记录了一些特殊需求,如:pull 部分代码、删除日志。 如果文中阐述不全或不对的,多多交流。
40 0
[Git]入门及其常用命令