图文教程 | Git安装配置、常用命令大全以及常见问题

news2024/11/24 10:02:06

 前言

        因为多了一台电脑,平时写一些代码,改一些文件,用U盘存着转来转去特别麻烦。于是打算用Git管理我的文件,方便在两个终端之间传输数据啥的。也正好给新电脑装好Git。

📢博客主页:程序源⠀-CSDN博客
📢欢迎点赞👍收藏⭐留言📝如有错误敬请指正!

一、简单介绍

什么是 Gitee?

        Gitee 提供免费的 Git 仓库,还集成了代码质量检测、项目演示等功能。对于团队协作开发,Gitee 还提供了项目管理、代码托管、文档管理的服务,5 人以下小团队免费。

gitHub 和 Gitee 的区别

  • 1、Gitee 的服务器在国内,在国内访问速度更快;而 github 知名度大于码云,国内访问不太稳定。
  • 2、gitHub 是一个面向开源及私有软件项目的托管平台,具有 git 代码仓库托管和基本的 Web 管理界面。Gitee.com(码云)是 OSCHINA.NET 推出的代码托管平台,支持 Git 和 SVN。
  • 3、Gitee 提供免费的私有仓库托管,gitHub 建立私有项目需要付费。

国内用 Gitee 还是 Github

        推荐使用 Gitee,Gitee 对国人比较友好,访问速度比 Github 快,如果用户的英语比较好,推荐使用 Github,Github 用户数量庞大,并且优秀的开源项目也非常之多,是 Gitee 不能比较的。

二、Git安装

2.1 git下载

官网地址:

http://git-scm.com/download/winicon-default.png?t=N7T8http://git-scm.com/download/win

打开下载好的程序

可以自行更改安装路径

下一步按需选择,一般默认即可。三个未选选项分别为:

创建桌面快捷方式、每天检查更新、将Git Bash配置文件添加到Windows

接下来一直默认下一步到最后安装即可。

打开一个文件夹或者在桌面,shift + 鼠标右键,检查是否安装成功

出现Open Git GUI/Bash here这两个选项即成功安装

2.2 图形化界面TortoiseGit(选装)

下载地址:

https://download.tortoisegit.org/tgit/icon-default.png?t=N7T8https://download.tortoisegit.org/tgit/

打开安装程序:

默认下一步安装即可

先运行进行初次配置

自动找到git的bin路径

找到gitee主页的name以及自己注册时使用的邮箱,输入到框中

          

完成安装

检查是否成功:shift + 右键,出现Git Clone三个选项即成功安装。

三、git指令大全

1、查看已有的配置信息:`git config --list`  
2、创建 demo 文件夹:`mkdir demo`  
3、初始化:`git init` 
4、将 github 上的仓库克隆到本地:`git clone [仓库地址]`  
5、查看做了哪些修改:`git diff(按 q 退出)`
6、创建a.html:`touch a.html`  
7、进入编辑.gitignore:`vim .gitignore`
8、添加:`/[文件夹名]`
9、将文件添加到缓存获得 Git 的跟踪:`git add(. -A *)`
10、查看当前版本库各个文件的状态:`git status`
11、将缓存区内容添加到仓库中:`git commit` 
12、版本留言,尽量写的语义话:`git commit -m` 
13、查看提交记录:`git log`
14、取消已经缓存的内容:`git reset`
15、也可以通过版本号回滚:`git reset --hard [版本号]`
16、把一个文件删除,并把它从git的仓库中移除:`git rm [文件名]`
17、取消对某个文件的修改:`git checkout [文件名]`
18、忽略上传的文件:`vi.gitignore`
19、创建新分支:`git branch [yourbranch]`
20、切换分支:`git checkout [yourbranch]`
21、或者直接创建一个分支,并且切换过去:`git checkout -b [yourbranch]`
22、删除分支:`git branch -d [yourbranch]`
23、推送分支:`git push origin [yourbranch]`

四、gitee码云的使用

注册、建仓库不多说,自行搜索

打开想要上传仓库的文件夹,shift + 右键空白处,打开bash窗口,输入

git init 

出现下面的窗口,输入注册码云使用的用户名和密码即可。

打开仓库地址,点击 克隆/下载,复制HTTPS地址后,在bash窗口输入

git remote add origin (你的仓库地址)

完成绑定仓库

先从仓库拉取文件,输入

git pull origin master

输入命令:git add .

添加本地代码文件到缓存区:使用命令 git add . 将所有文件添加到 Git 缓存区。

 输入命令:git commit -m "这里是注释"

提交代码到本地仓库

输入命令: git push origin master

推送代码到远程仓库:使用命令 git push -u origin master 将本地仓库中的代码推送到 Gitee 远程仓库。

 五、常见问题

下面是自己经常会出现的场景:

 1、创建新分支并关联远程:

创建并切换到分支:git checkout -b develop

将本地分支关联到远程分支:git branch --set-upstream-to=origin/develop develop

报错的话可以试一下:git push origin feature-branch:feature-branch

//推送本地的feature-branch(冒号前面的)分支到远程origin的feature-branch(冒号后面的)分支(没有会自动创建)

git分支合并时将所有提交记录汇总为一条: (最好不要一条命令:git merge --squash)

git merge --squash 分支名
git commit -m "message here"

2、创建本地分支并推送到服务器

创建并切换到分支branchName:git checkout -b branchName

推送本地的branchName(冒号前面的)分支到远程origin的branchName(冒号后面的)分支(没有会自动创建):git push origin branchName:branchName

发现问题:
如果命令行提示git branch --set-upstream dev origin/branchName:则需在终端输入git push -u origin branchName

3、查看git配置信息

显示Git当前配置信息,点击**“q”**键退出查看:git config --list 或 git config -l

4、SSH

查看自己的SSH:cat ~/.ssh/id_rsa.pub

生成SSH:ssh-keygen -t rsa -C “$your_email”

5、暂存

**git stash ** :暂存(存储在本地,并将项目本次操作还原)
**git stash pop ** :使用上一次暂存,并将这个暂存删除,使用该命令后,如果有冲突,终端会显示,如果有冲突需要先解决冲突(这就避免了冲突提交服务器,将冲突留在本地,然后解决)
**git stash list ** :查看所有的暂存
**git stash clear **:清空所有的暂存
**git stash drop [-q|–quiet] [] **:删除某一个暂存,在中括号里面放置需要删除的暂存ID
**git stash apply **:使用某个暂存,但是不会删除这个暂存

暂存不小心清空,结果里面有需要的代码,也是有找回方法的:
**git fsck --lost-found **:命令找出刚才删除的分支里面的提交对象。
git show+版本:命令查看是否正确
git merge+版本号:如果正确使用git merge命令找回

6、git忽略文件

生成git忽略文件.gitignore文件,使用终端进入到你要生成.gitignore的目录,使用命令touch .gitignore,就会生成。

下面是.gitignore的==常用规则==:

/mtk/ 过滤整个文件夹
*.zip过滤所有.zip文件
/mtk/do.c 过滤某个具体文件
这样文件或者文件夹就被过滤了,当然本地库中还有,只是push的时候不会上传。

.gitignore还可以指定要将哪些文件添加到版本管理中:

!*.zip
!/mtk/one.txt
如果你将文件加入到了.gitignore文件里面,但是没有说生效,为什么呢?因为之前你已经把这个文件push到过远程仓库了,请使用以下命令:

git rm --cached git ls-files -i --exclude-from=.gitignore

经过我几次实验之后发现,上述命令在之前没有创建.gitignore文件但是已经向服务器push过代码的时候好使,但是在已经使用过这个命令后,由于其他分支并没有添加忽略文件,合并分支后,忽略文件失效,那么上述命令可能失效,那么**先把本地缓存删除(改变成未track状态),然后再提交**,方案如下:

git rm -r --cached .
git add .
git commit -m '日志'

要记得,因为改变了一些东西,所以要从新pod install 然后提交代码,但是要使用git status查看状态,比如已经忽略了Podfile.lock,那么查看时没有Podfile.lock那就是好了。

7、重定向项目远程仓库地址

git remote set-url origin 新项目地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1607648.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3d模型渲染怎么会没材质---模大狮模型网

在进行3D模型渲染时,有时会遇到材质丢失的问题,这可能会给设计师们带来一些困扰。材质是渲染的重要组成部分,它们赋予了模型真实感和视觉吸引力。然而,当模型在渲染过程中出现没有材质的情况时,可能会导致最终效果不如…

Spring Boot 2.x 将 logback 1.2.x 升级至 1.3.x

场景 安全部门针对代码进行漏洞扫描时,发现 logback-core 和 logback-classic 都属于 1.2.x 版本,这个版本存在 CVE 漏洞,并且建议升级到 1.3.x 版本。 问题 将两个包直接升级到 1.3.x 版本时,Spring Boot Web 服务启动直接出现…

基于springboot+vue+Mysql的地方废物回收机构管理系统

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

C语言中的数据结构--双向链表

前言 上一节我们已经学习完了单链表(单向不带头不循环链表)的所有内容,我们在链表的分类里面知道了,链表分为单向的和双向的,那么本节我们就来进行双向链表(带头双向循环链表)的学习&#xff0c…

Java 的注释

文章目录 java 的注释共有三种形式单行注释多行注释文档注释文档注释的文档需要命令进行生成GBK 不可映射问题 与大多数的编程语言一样,Java 中的注释也不会出现在可执行程序中。 因此我们可以在源程序中根据需要添加任意多的注释,而不必担心可执行代码受…

优秀Burp插件 提取JS、HTML中URL插件

Burp Js Url Finder 攻防演练过程中,我们通常会用浏览器访问一些资产,但很多接口/敏感信息隐匿在html、JS文件中,通过该Burp插件我们可以: 1、发现通过某接口可以进行未授权/越权获取到所有的账号密码 2、发现通过某接口可以枚举用…

【数据结构与算法】贪心算法及例题

目录 贪心算法例题一:找零问题例题二:走廊搬运物品最优方案问题输入样例例题三:贪心自助餐 贪心算法 贪心算法是一种在每一步选择中都采取当前状态下最优的选择,以期望最终达到全局最优解的算法。它的核心思想是每次都选择当前最…

python语言零基础入门——变量与简单数据类型

目录 一、变量 1.创建变量 2.变量的修改 3.变量的命名 (1)常量 (2)标识符 (3)关键字 (4)命名规则 二、简单数据类型 1.变量的数据类型 2.数据类型 3.整型(In…

Java项目:基于Springboot+vue实现的校园志愿者管理系统(源码+数据库+环境配置和运行指导视频+系统讲解视频)

一、项目简介 本项目是一套基于Springbootvue实现的校园志愿者管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试&…

适合咖啡机小流量开关的流量计有哪些

在选择适合咖啡机小流量开关的流量计时,霍尔式流量计和光电式流量计是常用的流量计。 霍尔式流量计采用了霍尔效应的原理。它将带有两极磁铁的叶轮放置于垂直于磁场的环境中,当液体流经时,叶轮会因流体的作用而转动,产生GS值&…

BCLinux8U6系统部署oceanbase分布式数据库社区版之一、准备 OBD 中控机

本文记录了在BCLinux8U6操作系统的虚拟服务器准备oceanbase开源数据库的 OBD 中控机的过程。 一、中控机环境 1、虚拟服务器硬件配置 2、操作系统版本信息 [rootlocalhost ~]# cat /etc/os-release NAME"BigCloud Enterprise Linux" VERSION"8.6 (Core)&qu…

最强开源大模型 Llama 3震撼发布!开源模型将追上GPT-4,4000亿参数模型也在路上

就在昨晚,Meta官宣了开源的Llama 3 8B和70B版本。 8B模型在多项指标中超越了Gemma 7B和Mistral 7B Instruct,而70B模型则超越了闭源的Claude 3 Sonnet,和Gemini Pro 1.5。 此外Meta还有一个still training的400B参数版本,它和GP…

编程入门(五)【Visual Studio Code安装与C/C++语言运行】

读者大大们好呀!!!☀️☀️☀️ 🔥 欢迎来到我的博客 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️寻至善的主页 文章目录 前言VScode安装与环境配置编写第一个C语言程序总结 前言 经过了前面对计算机…

【代码随想录】【单调栈】day59:● 503.下一个更大元素II ● 42. 接雨水

下一个更大元素(可循环) def nextGreaterElements(self, nums):""":type nums: List[int]:rtype: List[int]"""# 做了两遍遍历,相当于循环dp [-1] * len(nums)stack []for i in range(len(nums)*2):while(le…

java宠物领养系统的设计与实现(springboot+mysql+源码)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的宠物领养系统的设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 基于Spring Bo…

D咖饮品机器人惊艳亮相:智能硬件改变生活习惯

在当今快节奏的生活中,人们对于便捷、高效的需求日益增长,智能硬件应运而生,其中饮品机器人作为一种新型的智能设备,正在以惊艳的姿态亮相于人们的生活中,为人们带来了全新的消费体验,改变着大众的生活习惯…

psd文件误删了怎么恢复?本文有4种恢复方法

PSD文件作为Adobe Photoshop的源文件格式,包含了图层的丰富信息和编辑记录,对于设计师和摄影师来说具有极高的价值。然而,误删PSD文件的情况时有发生,这不仅可能导致设计工作的中断,还可能造成不可挽回的数据损失。那么…

汽车4S集团数据分析

派可数据分析--汽车4S集团。 派可数据汽车4S集团数据分析概述。派可数据汽车4S集团分析主题全面涵盖行业内各板块业务分析,具体包括:保险业务分析、客户关系分析、汽车保养情况分析、售后维修主题分析、整车销售分析、整车库存分析、装具销售分析、配件…

混合云自动化优势有哪些?

随着云计算领域变得更加动态,全球各地的组织都开始将混合云作为其IT基础设施效率、灵活性、安全性、可扩展性和成本效益的支柱。混合云将本地数据中心与公有云结合起来,为企业提供了灵活性和可扩展性,同时又能满足其对安全性、合规性和控制力…

代码随想录算法训练营第三十九天|62.不同路径,63.不同路径 II

题目:62.不同路径 一个机器人位于一个m*n网格的左上角(起始点在下图中标记为“Start”)。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径&a…