目录
git学习笔记——Linux和Windows下git的基本操作
一、Linux环境
1、安装git
2、设置git账号信息
3、设置让credential helper 帮助我们在一定时间内在内存中保存我们的code,其中第二行为设置超时的时间
4、获取ssh秘钥和远程GIT关联
5、push常用命令
6、push报错时调大缓存
二、Windows环境
1、版本控制;备份与修改
1)本地版本控制系统
2)集中化版本控制系统(CVCS)
3)分布式版本控制系统(DVCS)
2、Windows下git的安装和配置
1)安装
2)配置用户名和邮箱
3、git文件的三种状态和工作模式
1)三种状态
2)三个工作区域
3)git的工作流程
4、创建版本库并提交文件
1)初始化本地仓库
2)新建文件夹git01.txt并添加到暂存区
5、文件修改与提交修改
1)暂存区文件的提交与撤销
2)版本回退
3)文件删除
6、远程仓库
1)github
2)ssh下载(需要登陆)
3)本地项目(本地仓库)推到远程仓库
7、git分支操作
1)本地分支操作
2)远程分支操作
3)本地分支冲突解决
4)多人协同操作冲突
9、标签管理
10、Idea下git基本操作
1)环境集成配置
2)推送项目到远程仓库
3)分支操作
4)gitignore插件
5)冲突及其解决
首页 开发工具 git 完全掌握Linux和Windows下git的基本操作

完全掌握Linux和Windows下git的基本操作

Mar 10, 2022 pm 06:07 PM
git

本篇文章给大家带来了关于Git的相关知识,其中主要介绍了linux和windows下git的基本操作,希望对大家有帮助。

完全掌握Linux和Windows下git的基本操作

推荐学习:《Git教程

git学习笔记——Linux和Windows下git的基本操作

github主页:https://github.com/Taot-chen

一、Linux环境

1、安装git

sudo apt-get install git

2、设置git账号信息

git config --global user.name "你的git账号用户名"git config --global user.email "你的邮箱"

3、设置让credential helper 帮助我们在一定时间内在内存中保存我们的code,其中第二行为设置超时的时间

git config --global credential.helper cachegit config --global credential.helper 'cache --timeout=3600'

4、获取ssh秘钥和远程GIT关联

ssh-keygen -t rsa -C "你的邮箱"# 之后一路回车cd ~/.ssh 
cat id_rsa.pub# 再在Terminal中复制密钥,添加到github的settings的SSH公钥中,完成免密码登录关联
# 验证ssh通信情况,提示连接成功即可ssh -T git@github.com# 其他操作就和为windows的几乎一致

5、push常用命令

git init # 初始化本地仓库git config --list
 # 可以查看你的git配置信息
 # 提交文件到本地仓库git add abc.cppgit commit -m "first commit" //-m 用于指定本次提交的描述信息
 # 提交到repositorygit remote add origin "github仓库ssh地址"	//关联仓库git push origin master #master 是分支名
 # 以后若提交到相同仓库,提交到本地仓库之后,直接git push即可# 克隆项目git clone "项目的ssh地址"

6、push报错时调大缓存

git config http.postBuffer 52428800		//(根据文件大小随便调整)

二、Windows环境

1、版本控制;备份与修改

1)本地版本控制系统

 把版本号存入数据库,来区分记录版本的更迭。

2)集中化版本控制系统(CVCS)

 具有一个专门用于存放版本的修订版本的服务器,并且能够借助版本记录来方便地定位相关的记录。

3)分布式版本控制系统(DVCS)

 客户端不只是提取出最新版本的文件快照,而是把最原始的代码仓库镜像到本地,任何一处协同处理的服务器故障,事后都可以用任何一个镜像出来的本地仓库恢复。

2、Windows下git的安装和配置

1)安装

 在git官网下载安装对应的版本,在菜单中找到Git->Git Bash,出现命令行窗口,即是安装成功。

  • 查看版本:

    git --version

2)配置用户名和邮箱

git config --gobal user.name "your user name"     
# 配置用户名git config --gobal user.email "your email"    
#配置邮箱git config --list     
# 查看所有配置

3、git文件的三种状态和工作模式

1)三种状态

  • 已提交(committed):数据已经安全地保存到本地数据库中
  • 已修改(modified):修改了文件,但还没保存到数据库中
  • 已暂存(staged):对一个已修改的文件的当前版本作了标记,使之包含在下次提交的快照中

2)三个工作区域

  • 工作区:本地项目目录
  • 暂存区:对修改后的文件进行快照,添加到暂存区
  • git仓库:工作区的隐藏目录.git,不算是工作区,是git的版本库

3)git的工作流程

  • 在工作区中修改某些文件;
  • 对修改后的文件进行快照,添加到暂存区
  • 提交更新,将保存在暂存区的快照永久存储在git仓库中

    拉取: git仓库->本地工作区

    提交: 本地工作区->暂存区->git仓库

4、创建版本库并提交文件

1)初始化本地仓库

 在本地初始化一个没有任何文件的空仓库。

git init

2)新建文件夹git01.txt并添加到暂存区

git add     
# 将文件添加到暂存区git add .   
# 提交当前目录的全部文件git status  
# 查看文件的状态git commit  
# 将暂存区的文件提交到本地仓库git log     
# 查看完整的提交日志信息git diff HEAD --file    
# 查看文件法file历次提交的区别

例如:

Git Bash

git init    
# 创建空仓库git add git01.txt   
# 将文件git01.txt添加到缓存区git commit -m '第一次提交'   
#提交文件到本地仓库,单引号内的内容是本次提交的注释,必须要有git status    
# 查看暂存区文件状态git log    
 # 查看完整的提交记录

5、文件修改与提交修改

 可以直接在工作区文件中进行修改,之后再添加到暂存区,提交到本地仓库

注: 提交之前必须先添加到暂存区

1)暂存区文件的提交与撤销

  • 提交:git add/git commit

  • 撤销:

     从暂存区移除:

    git restore --staged git02.txt   
    # 从暂存区移除文件git02.txtgit reset HEAD git02.txt    
    # 取消关于文件git02.txt上一次的操作

2)版本回退

简化显示提交记录:

git log --pretty=oneline

此时HEAD指针默认指向最后一次提交的记录。版本回退就是让HEAD指针想要回退到的版本。

git reset --hard HEAD^    
# 回退一个版本git reset --hard HEAD^^   
# 回退两个版本git reset --hard HEAD~n   
# 回退n个版本git reset --hard "版本识别码”   
# 回退或者前进到版本识别码所在的版本git reflog    
# 显示所有的提交记录(包括HEAD指向的版本之后的版本),即可以显示用户的每一次操作的记录

3)文件删除

git ls-files    
# 查看本地仓库的文件目录git rm filename   
# 删除文件filename
# 另一种删除方法:现在工作区删除文件,之后再提交操作即可

6、远程仓库

1)github

git clone "项目地址"(github地址)    
# 下载github项目(可以不登陆)

2)ssh下载(需要登陆)

# 首先需要在gitbash中生成一个keyssh-keygen -t rsa -C "github邮箱"
# 找到生成的公钥,打开后复制,之后再去github中添加`SSH and GPG keys`
# 验证有没有添加成功ssh -T git@github.com# 出现您以被成功认证即可(即此时已经将ssh绑定了github)
# 下载项目git clone "项目地址" (ssh地址)

3)本地项目(本地仓库)推到远程仓库

# 在github新建一个仓库# 将本地项目提交到本地仓库
# 将本地仓库绑定github上面的远程仓库git remote add origin "github仓库地址"
# 将其推到远程仓库的主干上(远程仓库中包含本地仓库的所有提交记录)git push -u origin master
# 以后的更新推送,只需要在本地提交完成之后,直接如下命令git push

7、git分支操作

 主干是已经上线的项目,分支中的任何操作都不会影响主干的功能。在分支完善无误之后,再将其合并到主干即可。

1)本地分支操作

常用基本命令

命令 描述
git checkout branch 切换到指定分支
git checkout -b new_branch 新建分支并切换到新建分支
git branch -d branch 删除指定分支
git branch 查看所有分支,并且*标记当前所在分支
git merge branch 合并分支
git branch -m / -M oldbranch newbranch 重命名分支,如果new_branch名字分支已经存在,则需要使用-M强制重命名
  • 切换到指定分支:git checkout branch
  • 新建分支并切换到新建分支:git checkout -b new_branch
  • 删除指定分支:git branch -d branch
  • 查看所有分支,并且*标记当前所在分支:git branch
  • 合并分支:git merge branch
  • 重命名分支,如果new_branch名字分支已经存在,则需要使用-M强制重命名:git branch -m | -M oldbranch newbranch

    注:

    只能在主干分支上来合并分支,不可反过来。(虽然git不会报错,但是这样是不可以的)

    分支所具有的内容,就是创建分支的时候主干所具有的内容。

2)远程分支操作

分支push和pull

相关命令

命令 描述
git branch -a 查看本地与远程分支
git push origin branch_name 推送本地分支到远程
git push origin :remote_branch 删除远程分支(本地分支还保留)
git checkout -b local_branch origin/remote_branch 拉取远程指定分支并在本地创建分支

获取远程分支的最新状态

git fetch

图表的方式显示操作记录

git log --graph --pretty=oneline

3)本地分支冲突解决

# 当分支和主干的同一文件的同一行不同的时候,合并分支就会出现冲突
# 根据具体的需要修改,使之相同即可

4)多人协同操作冲突

# 两个用户对同一个文件的同一行进行了不同的操作
# 解决方法:在推送之期拉一下远程仓库,在本地根据具体的需求解决完冲突之后再推送

9、标签管理

标签操作基本命令git tag

命令 描述
git tag tag_name 新建标签,默认为HEAD
git tag -a tag_name -m ‘xxx’ 添加标签并指定标签描述信息
git tag 查看所有标签
git tag -d tag_name 删除一个本地标签
git push origin tag_name 推送本地标签到远程
git push origin --tags 推送全部未推送过的本地标签到远程
git push origin :refs/tags/tag_name 删除一个远程标签

10、Idea下git基本操作

1)环境集成配置

Configure->Settings->搜索git->在Path to Git executable中添加git的安装路径(一直到git.exe)->test->出现版本号,即表示成功->添加github


File->Other Settings->Setting for New Projects->Git/Git Hub

2)推送项目到远程仓库

项目提交到本地仓库->创建远程仓库->绑定远程仓库->推送到远程仓库

3)分支操作

4)gitignore插件

5)冲突及其解决

推荐学习:《Git学习教程

以上是完全掌握Linux和Windows下git的基本操作的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

Rimworld Odyssey温度指南和Gravtech
1 个月前 By Jack chen
Rimworld Odyssey如何钓鱼
1 个月前 By Jack chen
我可以有两个支付帐户吗?
1 个月前 By 下次还敢
初学者的Rimworld指南:奥德赛
1 个月前 By Jack chen
PHP变量范围解释了
3 周前 By 百草

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Laravel 教程
1603
29
PHP教程
1508
276
如何在PHP环境中设置环境变量 PHP运行环境变量添加说明 如何在PHP环境中设置环境变量 PHP运行环境变量添加说明 Jul 25, 2025 pm 08:33 PM

PHP设置环境变量主要有三种方式:1.通过php.ini全局配置;2.通过Web服务器(如Apache的SetEnv或Nginx的fastcgi_param)传递;3.在PHP脚本中使用putenv()函数。其中,php.ini适用于全局且不常变的配置,Web服务器配置适用于需要隔离的场景,putenv()适用于临时性的变量。持久化策略包括配置文件(如php.ini或Web服务器配置)、.env文件配合dotenv库加载、CI/CD流程中动态注入变量。安全管理敏感信息应避免硬编码,推荐使用.en

比特币代号是什么?比特币是什么样式的代码? 比特币代号是什么?比特币是什么样式的代码? Jul 22, 2025 pm 09:51 PM

比特币作为数字世界的先驱,其独特的代号和底层技术一直是人们关注的焦点。它的标准代号是 BTC,在某些符合国际标准的平台上也被称为 XBT。从技术角度看,比特币并非单一的代码样式,而是一个庞大且精密的开源软件项目,其核心代码主要由 C 语言编写,并融合了密码学、分布式系统和经济学原理,任何人都可以查看、审查和贡献其代码。

什么是Useless Coin(USELESS币)?USELESS币用途、突出特点及未来增长潜力概述 什么是Useless Coin(USELESS币)?USELESS币用途、突出特点及未来增长潜力概述 Jul 24, 2025 pm 11:54 PM

目录关键要点什么是UselessCoin:概述和主要特征USELESS的主要特点UselessCoin(USELESS)未来价格展望:2025年及以后什么影响UselessCoin的价格?未来价格前景UselessCoin(USELESS)的核心功能及其重要性UselessCoin(USELESS)如何运作以及它带来的好处UselessCoin的工作原理主要优点关于USELESSCoin的公司本组织的伙伴关系他们如何协同工

如何用Mac搭建PHP Nginx环境 MacOS配置Nginx与PHP服务组合 如何用Mac搭建PHP Nginx环境 MacOS配置Nginx与PHP服务组合 Jul 25, 2025 pm 08:24 PM

Homebrew在Mac环境搭建中的核心作用是简化软件安装与管理。1.Homebrew自动处理依赖关系,将复杂的编译安装流程封装为简单命令;2.提供统一的软件包生态,确保软件安装位置与配置标准化;3.集成服务管理功能,通过brewservices可便捷启动、停止服务;4.便于软件升级与维护,提升系统安全性与功能性。

Solana夏季:开发者活动、迷因币与下一波热潮 Solana夏季:开发者活动、迷因币与下一波热潮 Jul 25, 2025 am 07:54 AM

Solana的强势复苏:开发者活跃激增与迷因币狂欢驱动,能否持久?趋势深度解读Solana卷土重来了!在经历一段沉寂后,该公链再度焕发活力,币价持续走高,开发社区也愈发热闹。但这波反弹的真正动力来自哪里?是否只是昙花一现?我们来深入拆解Solana当前的几大核心动向:开发者生态、迷因币狂热以及整体生态扩张。币价飙升背后:真实开发活动回暖最近,SOL价格自六月以来首次重返200美元上方,引发市场热议。这并非空穴来风——根据Santiment数据显示,其开发者提交代码频率达到近两个月新高。这

成品python大片在线观看入口 python免费成品网站大全 成品python大片在线观看入口 python免费成品网站大全 Jul 23, 2025 pm 12:36 PM

本文为您精选了多个顶级的Python“成品”项目网站与高水平“大片”级学习资源入口。无论您是想寻找开发灵感、观摩学习大师级的源代码,还是系统性地提升实战能力,这些平台都是不容错过的宝库,能帮助您快速成长为Python高手。

如何让PHP容器支持自动构建 PHP环境持续集成CI配置方式 如何让PHP容器支持自动构建 PHP环境持续集成CI配置方式 Jul 25, 2025 pm 08:54 PM

要让PHP容器支持自动构建,核心在于配置持续集成(CI)流程。1.使用Dockerfile定义PHP环境,包括基础镜像、扩展安装、依赖管理和权限设置;2.配置GitLabCI等CI/CD工具,通过.gitlab-ci.yml文件定义build、test和deploy阶段,实现自动构建、测试和部署;3.集成PHPUnit等测试框架,确保代码变更后自动运行测试;4.使用Kubernetes等自动化部署策略,通过deployment.yaml文件定义部署配置;5.优化Dockerfile,采用多阶段构

Vue成品资源网站免费入口 完整Vue成品永久在线观看 Vue成品资源网站免费入口 完整Vue成品永久在线观看 Jul 23, 2025 pm 12:39 PM

本文为Vue开发者和学习者精选了一系列顶级的成品资源网站。通过这些平台,你可以免费在线浏览、学习甚至复用海量高质量的Vue完整项目,从而快速提升开发技能和项目实践能力。

See all articles