首页 > 其他分享 >mingw

mingw

时间:2023-10-17 20:24:42浏览次数:44  
标签:文件 Git -- mingw 版本 git 目录

Git

介绍

版本控制的概念

是一种在开发过程中,用于方便管理我们(多人协作)的代码、修改、版本、工程修改,便于查看历史记录、备份、恢复以前版本的技术。

版本控制器的三种类型

1.本地版本控制

记录文件每次的更新,对每一个版本做一个快照存储在本地计算机(适合个人。如rcs)

反对

2.集中版本控制

所有数据统一在远程服务器上,本地只有以前版本的数据,使用前需要从远程服务器上同步到本地,在修改编辑,上传到远程服务器。

(如SVN,CVS,VSS)

3.分布式版本控制

所有文件都可以同步到本地计算机仓库,然后在同步到远程服务器。相当于每个本地计算机都是一个仓库,但还是要上传到统一的远程服务器。

如Git。

Git的历史

Git是linux系统创始人linus两周开发出来的,是为了便于管理linux系统开源社区的代码的协同开发,减少工作量,提高开发效率。


Git的使用

Git基本介绍

安装与环境配置

安装

官网 Git - 安装 Git (git-scm.com)

windows:一直点下一步就行了

linux:

环境配置

配置命令

git config -l  #查看配置
git config --system --list  #查看系统配置
git config --global --list  #查看当前用户配置

注意事项

Git相关的配置文件:

  1. Git\mingw64\etc\gitconfig :Git 安装目录下的 gitconfig --system 系统级

  2. C:\Users\Administrator\ .gitconfig 只适用于当前登录用户的配置 --global 全局

    这里可以直接编辑配置文件,通过命令设置后会响应到这里。

设置用户名与邮箱(非常重要)

当你安装Git后首先要做的事情是设置你的用户名称和e-mail地址。这是非常重要的,因为每次Git提交都
会使用该信息。它被永远的嵌入到了你的提交中:

git config --global user.name "kuangshen"  #名称
git config --global user.email [email protected]  #邮箱

只需要做一次这个设置,如果你传递了--global 选项,因为Git将总是会使用该信息来处理你在系统中所

做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行

该命令而不要--global选项。 总之--global为全局配置,不加为某个项目的特定配置。

Git的三种终端介绍
Git Bash

类似于Unix、Linux的终端操作。

常用命令

cd  #进入目录
ls  #列出目录下的文件
mkdir  #创建一个目录
toush  #创建一个文件
rm -ft  #删除文件或目录
mv  #移动文件或目录
cp  #复制文件或目录
pwd  #显示当前路径
clear  #清理当前终端界面
reset  #重启终端
history  #列出历史命令
Git CMD

类似于Windows的终端操作

Git GUI

Git的图形操作界面

Git的基本理论与操作流程

基本理论

Git的四个工作区域

  1. 工作目录:编写、存放代码的文件目录
  2. 暂存区:暂时存储工作区代码的修改,实质上是一个文件记录版本的修改
  3. 资源区:本地版本存储仓库
  4. 远程存储库:远程统一的代码版本控制存储库(如Gitee,Github)

四个工作区关系如下图

操作流程

  1. 在工作目录中添加、修改文件:
  2. 将需要进行版本管理的文件放入暂存区域;
  3. 将暂存区域的文件提交到gt仓库。
    因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)

如图

Git文件状态与关系

文件状态

版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,
不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。

  1. Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过 git add
    状态变为 Staged .
  2. Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文
    件有两种去处, 如果它被修改, 而变为 Modified . 如果使用 git rm 移出版本库, 则成为
    Untracked 文件
  3. Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过 git
    add 可进入暂存 staged 状态, 使用 git checkout 则丢弃修改过, 返回到 unmodify 状态,
    这个 git checkout 即从库中取出文件, 覆盖当前修改 !
  4. Staged: 暂存状态. 执行 git commit 则将修改同步到库中, 这时库中的文件和本地文件又变为一
    致, 文件为 Unmodify 状态. 执行 git reset HEAD filename 取消暂存, 文件状态为
    Modified
如何查看文件状态
git status  #查看所有文件状态
git status [fliename]  #查看指定文件状态
转换关系

如图

Git项目搭建与常用命令

项目搭建

本地仓库搭建
  1. 创建全新的仓库:在该仓库的本地目录下进入Git Bash终端输入以下命令

    git init  
    

    此时会出现一个.git的隐藏文件,该文件就记录了所有的版本信息

  2. 远程目录克隆一个目录:即该仓库的本地目录下进入Git Bash终端输入以下命令

    git clone [远程目录url]
    

    此时该目录下就会出现与远程目录一样的目录

远程版本存储库的搭建

Gitee搭建

  1. 注册登录码云,完善个人信息
  2. 设置本机绑定SSH公钥,实现免密码登录!
# 进入 C:\Users\Administrator\.ssh 目录
# 生成公钥
ssh-keygen -t rsa
  1. 将公钥信息public key 添加到码云账户中即可!
  2. 使用码云创建一个自己的仓库

Github搭建

Git常用命令

git add  #添加工作区文件到暂存区
git commit  #将暂存区文件上传的本地版本库
git push  #将本地版本库文件上传到远程版本库
git pull  #从远程版本库下载文件到工作区
git fetch/clone  #从远程版本库下载文件到本地版本库
git checkout  #从本地版库将文件移动到工作区
git rm  #将文件移出本地版本库
git reset HEAD [filename]  #指定退回某一次提交的版本

如何忽略不想上传的文件

有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等

在主目录下建立".gitignore"文件,此文件有如下规则:

  1. 忽略文件中的空行或以井号(#)开始的行将会被忽略。
  2. 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号

([abc])代表可选字符范围,大括号({string1,string2,...})代表可选的字符串等。

  1. 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
  2. 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不

忽略。

  1. 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件

(默认文件或目录都忽略)。

#为注释
*.txt #忽略所有 .txt结尾的文件
!lib.txt #但lib.txt除外
/temp #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/ #忽略build/目录下的所有文件
doc/*.txt #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

Git分支

标签:文件,Git,--,mingw,版本,git,目录
From: https://www.cnblogs.com/rupan/p/17770570.html

相关文章

  • [win10] MinGW make、./configue等命令使用
    [win10]MinGWmake、./configue等命令使用el/2023/9/2617:04:19本文建立在你已经配置好了MinGW,如果没有,请点击:https://blog.csdn.net/qq_39575835/article/details/83825300你可以添加形如这样的环境变量C:\MinGW\msys\1.0\bin,这样子make就可以直接使用了。不过正确......
  • Windows平台配置VSCode编写MinGW Qt
    Windows平台配置VSCode编写MinGWQt下载Qt官网下载链接,此处下载了开源版的在线安装器:!DownloadQt:GetQtOnlineInstaller(需要其他版本或下载源可自行搜索相关文章)VSCode官网:VisualStudioCode-Codeediting.RedefinedQt安装该版本在线下载器刚打开需要登录......
  • MinGW 和 MSVC
    在Winodws上编译通常会用到这两种工具链MinGW(MinimalistGNUforWindows)通常用于跨平台开发,可以编译出在Windows系统上运行的.exe程序MSVC(MicrosoftVisualC++)是专属于Windows软件开发,不能跨平台它们有以下区别:编译器:MinGW使用GNU编译器集合(GCC)的变体,它......
  • windows10安装MinGW
    1.下载https://sourceforge.net/projects/mingw/2.安装参考https://www.geeksforgeeks.org/installing-mingw-tools-for-c-c-and-changing-environment-variable/......
  • Windows10 环境下使用 Cmake 和 MinGW-w64 编译安装 OpenCV 4.0.1
    Windows10环境下使用Cmake和MinGW-w64编译安装OpenCV4.0.1翻译搜索复制......
  • MinGW-w64、cmake 安装
    介绍MSVC:即MicrosoftVisualC++Compiler,即微软自己的编译器我们下载Windows下的OpenCV时,会带两个文件夹VC14,VC15(分别与VisualStudio的版本有对应关系),这两个文件夹下的库可以直接运行不需要编译将VS作为Qt的开发环境也是使用这个编译器的缘故MinGW:我们都知道GNU在Linux下面......
  • Wiindows下更改CMake编译器为MinGW
    个人环境MinGW:使用QT6install的mingw1120_64.CMake:使用QT6install的CMake3.24.2.第一次编译时,默认生成VS的工程文件,为了修改编译器为MinGW,在编译时,键入:cmake-G"MinGWMakefiles"-DCMAKE_CXX_FLAGES=-std=c++11同时也指定了编译器支持的编译标准为c++11注......
  • Qt编译器——MinGW和MSVC的区别
    #1、MSVC:即MicrosoftVisualC++Compiler,即微软自己的编译器#2、MinGW:我们都知道GNU在Linux下面鼎鼎大名的gcc/g++,MinGW则是指MinimalistGNUforWindows的缩写Qt用MSVC和MinGW哪个编译器编译程序比较好?我的建议是使用MSVC。理由一:qtcreator的debuger有功能缺陷,经......
  • 安装MinGW时报错“The file has been downloaded incorrectly!”解决方案
    前言作为一个准备学习C语言的准大一的通信工程崽子,Linux还不会用,在Windows上使用gcc得安装MinGW。我知道各位大佬们看到第一句话之后想说些什么。虽然说有很多优秀的编程软件自带了MinGW,但是想想,如果使用Windows的cmd直接敲个“gcc-v”来跑代码,逼格不直接蹭蹭上涨,能够充分满足......
  • Qt+GDAL开发笔记(一):在windows系统mingw32编译GDAL库、搭建开发环境和基础Demo
    前言  麒麟系统上做全球北斗定位终端开发,调试工具要做一个windows版本方便校对,北斗GPS发过来的是大地坐标,应用需要的是经纬度坐标,所以需要转换,可以使用公式转换,但是之前涉及到了另一个shang市公司项目使用WG,最终选择了GDAL库进行转换。注意  如果读者不强制要求ming......