git操作总结

2023-11-17

git操作总结

一、配置Git

1、配置用户信息

  • 安装git后,第一件事是配置用户名邮件地址,记录是谁对文件进行了修改
  • –global命令运行一次,永久生效
git config --global user.name "****"
git config --global user.email "************@user.noreply.gitee.com"

2、检查配置信息

  • 可以查看当前配置的用户名邮件地址
# 查看所有的全局配置项
git config --global --list

3、获取帮助信息

# 获取简单的帮助文档
git config -h

二、git基本操作

获取git仓库的两种方式

  1. 将尚未版本控制的目录转换为git仓库
  2. 从其他服务器克隆一个已存在的git仓库

1、在现有目录中初始化仓库

步骤:
1. 在现有目录中打开命令行工具
2. 执行 git init 命令初始化git仓库 

2、查看文件状态

  • 文件有四种状态
    • 未跟踪
      • git不会管理未跟踪的文件,需要 跟踪新文件 的命令来告知git
      • 精简方式下,有两个红色的 ??
    • 未修改
    • 已修改
      • 已修改而未放入暂存区的文件,通过 git add 命令将文件放入暂存区
      • 精简方式下,有一个红色的 M
    • 已暂存
      • 通过 git add 跟踪新文件后,新文件会处于已暂存的状态
      • 精简方式下,新添加到暂存区的文件前面有一个绿色A
      • 精简方式下,已修改且已放到暂存区的文件前面有一个绿色M
git status
# 以精简的方式显示文件状态
git status -s

3、跟踪新文件

该命令有三个功能

  1. 跟踪新文件
  2. 将已跟踪且已修改的文件放到暂存区
  3. 把有冲突的文件标记为已解决状态
git add index.html
# 一次性将所有已修改和未跟踪的文件放入暂存区,使用频率最高
git add .

4、提交更新

通过提交更新,将暂存区的文件提交到git仓库中,其中-m是对提交的内容的描述

git commit -m "新建了index.html文件"

5、撤销对文件的修改

撤销操作是将仓库中的文件覆盖已修改的文件,不可逆,谨慎操作

git checkout -- index.html

6、忽略文件

有些文件不需要被git管理,又不希望出现在未跟踪文件列表中,则可以在根目录中创建一个.gitignore的配置文件,列出要忽略的文件的匹配模式

7、查看提交历史

# 最近的提交排在最上面
git log
# 只展示2条提交,数字可以自行填写
git log -2

三、本地分支操作

不允许在master主分支上修改代码,容易导致崩溃,一般在功能分支上修改代码,最后在合并到主分支上。

1、查看分支列表

  • *号表示当前所处分支
git branch

2、创建新分支

# 基于当前分支创建新分支
git branch 分支名称

3、切换分支

# 切换到login分支
git checkout login

4、合并分支

# 切换到主分支上
git checkout master
# 将login分支合并到master上
git merge login

5、删除分支

# 将login分支删除
git branch -d login

四、远程分支操作

1、将本地分支推送到远程分支

# origin是远程仓库的别名
# 当本地分支和远程分支的名称相同时可以将payment:payment简写成payment
git push -u origin payment
# -u参数是将本地分支和远程分支关联,仅在第一次推送时使用,之后可以直接使用git push
git push
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

git操作总结 的相关文章

  • 无法将 android“gen”文件夹提交到 Git

    我在 eclipse 中使用 EGit 为我正在开发的 Android 项目提供 Git 支持 问题是 将我的项目提交到本地存储库后 我意识到 gen 文件夹没有被提交 因此 当我从 Git 存储库获取最新源代码后尝试在另一台计算机上打开该
  • 在 Windows 上将 Mercurial (hg) 存储库转换为 Git (7)

    我现在真的很沮丧 我有一个现有的 hg 存储库 其中有几个月的编码历史 我想将其放入私有 Github 存储库中 以便我可以从那里对其进行处理 不幸的是我使用的是 Windows 我似乎找不到any转换我实际上可以正常工作的存储库的方法 实
  • 如何损坏 Git 存储库?

    创建损坏的 git 存储库有哪些方法 有没有有趣的方法可以永久损坏 git 存储库 你能否削弱一个 git 存储库 使其行为有些正常 但会做一些奇怪的事情 我的兴趣来自于当有人担心他们是否真的创建了不可恢复的状态时 它通常很容易修复或至少可
  • 将 svn 存储库添加到现有的 git 存储库中?

    我知道你可以使用 git svn init 来跟踪 svn 存储库 但这是为了你想创建一个全新的存储库 我的情况是 我目前已经有一个现有的 git 存储库 并且希望通过将 svn 存储库设为我当前 git 存储库中的远程分支来跟踪 svn
  • 如何使用 git hook pre-merge-commit 获取原始合并分支名称

    我正在尝试使用新的 git hook pre merge commit 创建一个特定的脚本 但它没有参数 有什么解决方法可以让我获得正在合并的分支的名称吗 例子 在分支 myBranch 上 我调用 git merge testingBra
  • Python 无法在 git bash 命令行中工作

    Python 不会在 git bash Windows 中运行 当我在命令行中输入 python 时 它会将我带到一个空行 而不会像在 Powershell 中一样显示它已输入 python 2 7 10 它没有给我错误消息 但 pytho
  • 本地git,推送到tfs远程repo

    我厌倦了向我的队友解释使用 DVCS 相对于 CVCS 的好处 他们中的一些人害怕学习曲线 另一些人则看不出任何原因 因为对他们来说 这都是一样的 就我个人而言 我对 TFS 及其问题感到非常厌倦 每当我需要进行一些小的 修复 时 我都必须
  • EGit(Eclipse git 插件)可以使用 SSH 密钥代替用户名和密码吗?

    我需要提交的 git 中央存储库是使用 SSH 密钥配置的 我的用户名是jmglov 但是当我执行 git 操作时 例如git clone 我使用这个配置 jmglov kitiara cat git config remote origi
  • 如何将普通的 Git 存储库转换为裸存储库?

    如何将 普通 Git 存储库转换为裸存储库 主要区别似乎是 在普通的 Git 存储库中 你有一个 git存储库内的文件夹 包含构成工作副本的所有相关数据和所有其他文件 在裸露的 Git 存储库中 没有工作副本和文件夹 我们称之为repo g
  • RuntimeError:模型类 django_messages.models.Message 未声明显式 app_label 并且不在 INSTALLED_APPS 中的应用程序中

    我正在尝试使用https github com arneb django messages https github com arneb django messages打包我的消息传递内容并尝试了以下操作 pip install git h
  • 返回到存储库中的特定修订后提交并推送更改?

    我们需要及时返回到某个特定的提交 一些意外的改变是为了掌握 尝试恢复它挖得太深 所以 master 的状态很糟糕 现在我们希望master回到66ada4cc61d62afc 根据git 恢复到某个提交 https stackoverflo
  • 如何查看 github 的 SSH 密钥?

    我最近收到一封来自 Github 的电子邮件 要求我检查我的 SSH 密钥 请检查您的钥匙并确保您 认出他们 如果您有任何疑问 请拒绝钥匙并 上传新密钥 如何在 ubuntu 11 10 上使用 git 检查我的密钥 您可以按照 GitHu
  • Eclipse 与外部 src 和 Web 内容文件夹链接或映射

    首先这不是问题但是我遇到的问题的解决方案浪费了4 5个小时来找到解决方案 请让我知道是否有更好的替代方法来使用 eclipse 项目管理外部 src 文件夹 我正在使用版本控制系统 GIT 来管理我的项目 还使用外部 Git 客户端 Sou
  • gitlab 上的权限被拒绝(公钥)

    我的问题是我无法从 GitLab 推送或获取 不过 我可以克隆 通过 HTTP 或通过 SSH 当我尝试推送时出现此错误 权限被拒绝 公钥 致命 无法从远程存储库读取 从我看过的所有线程中 这是我所做的 在我的计算机上设置 SSH 密钥并将
  • 无法从我的电脑上使用 traefik 后面的 gitlab 进行 git 克隆

    这是我的 gitlab 和 traefik 配置 version 3 7 services gitlab web image gitlab gitlab ce latest restart always hostname gitlab ro
  • 如何在Windows上分离“Git bash”中启动的“git gui”?

    例如 我开始 git bash 我导航到某个目录 I start git gui 我关闭控制台窗口或按 Ctrl C Git gui 的窗口消失了 即使我用过git gui disown 即使当我按 Ctrl C 时它不在前台 如何正确分离
  • git stash 删除最旧的存储(比如最旧的 5 个存储)

    如何在一个语句中删除最旧的存储 例如最旧的 5 个存储 而不是执行以下操作 git stash drop stash 3 git stash drop stash 4 git stash drop stash 5 git stash dro
  • Git:压缩 master 上提交的最简单方法[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 git 将最后 X 次提交压缩在一起 https stackoverflow com questions 5189560 how can i squash my last x commits
  • 自动生成/删除詹金斯工作

    我正在寻找一种自动创建一组詹金斯作业的方法 通常在创建新的 git 分支之后 我已经为maven尝试过这个插件 http evgeny goldin com wiki Maven jenkins plugin http evgeny gol
  • 按时间顺序将多个文件夹提交到 git 中

    我有数百个网站备份 每个文件夹一个 我想将它们放入 git 存储库中 每个备份作为一个版本 这些变化主要涉及图像文件和每天 2 个数据库备份 大小约为 25 GB 并且不断增加 有没有办法告诉 git 获取其中一个文件夹并将其提交到存储库中

随机推荐

  • SQL语句截取字段某指定字符的前半段/后半段内容

    最近项目中遇到一个小问题 需要从数据库中取出对应数据 并根据某个字段中的前半段内容进行排序 搜索资料后得以解决 现将解决方法记录如下 最初的查询SQL SELECT file name sort FROM base annexesfile
  • 盛最多水的容器

    给定一个长度为 n 的整数数组 height 有 n 条垂线 第 i 条线的两个端点是 i 0 和 i height i 找出其中的两条线 使得它们与 x 轴共同构成的容器可以容纳最多的水 返回容器可以储存的最大水量 说明 你不能倾斜容器
  • Palindrome subsequence【区间DP+冗斥】

    题目链接HDU 4632 题目让我们求给定的一段字符串上回文串的长度 一个数也算是回文串 于是我就想怎样去找其中的规律 我举了些例子 先是从相同的字符串开始举例 aaa 对于aaa dp 1 1 1 dp 2 2 1 dp 1 2 dp 1
  • 遥感+python 目录

    遥感 python 1 遥感影像预处理 环境搭建 辐射定标 大气校正 RPC校正 重投影 2 遥感影像样本读取 CSV 格式样本读取 XLS 格式样本读取 TIFF 格式样本读取 SHAPE 格式样本读取 3 遥感影像分类器构建 KNN分类
  • Linux——进程信号的发送

    目录 一 信号发送的概念 首先来讲几个发送术语 它有三种情况 注意 二 信号在内核中的表示示意图 三 信号捕捉 所以总结一下 此时 会出现这样一个疑问 操作系统是如何得知现在被执行的进程是用户态还是内核态 问题2 CPU在执行某个进程时是如
  • Node.js 应用:Koa2 使用 JWT 进行鉴权

    前言 在前后端分离的开发中 通过 Restful API 进行数据交互时 如果没有对 API 进行保护 那么别人就可以很容易地获取并调用这些 API 进行操作 那么服务器端要如何进行鉴权呢 Json Web Token 简称为 JWT 它定
  • React全部api解读

    很多同学用react开发的时候 真正用到的React的api少之又少 基本停留在Component React memo等层面 实际react源码中 暴露出来的方法并不少 只是我们平时很少用 但是React暴露出这么多api并非没有用 想要
  • pip(Python包管理工具)安装第三方库教程

    目录 1 python环境检查 2 pip库的常用命令 2 1 更新包 2 1 1 更新pip工具 2 1 2 更新三方库 2 2 安装包 2 2 1 在线安装 2 2 1 1 直接安装 2 2 1 2 镜像安装 2 2 2 离线安装 2
  • 机器学习概述和数据预处理

    概述 机器学习定义 机器学习是一门能够让编程计算机从数据中学习的计算机科学 一个计算机程序在完成任务T之后 获得经验E 其表现效果为P 如果任务T的性能表现 也就是用来衡量的P 随着E增加而增加 那么这样计算机程序就被称为机器学习系统 自我
  • Vue 2项目如何升级到Vue 3?

    应不应该从 Vue 2 升级到 Vue 3 应不应该升级 这个问题不能一概而论 首先 如果你要开启一个新项目 那直接使用 Vue 3 是最佳选择 后面课程里 我也会带你使用 Vue 3 的新特性和新语法开发一个项目 以前我独立使用 Vue
  • Linux磁盘管理命令

    Linux磁盘管理命令 Linux磁盘管理命令 1 pwd命令 2 cd命令 3 df命令 4 mkdir命令 5 mount及umount命令 6 ls命令 7 history命令 Linux磁盘管理命令 1 pwd命令 作用 显示当前工
  • ubuntu18.04安装Azure Kinect传感器摄像头教程

    官方教程 Azure Kinect DK文档 配置存储库 可以通过安装适用于 Linux 分发版和版本的 Linux 包自动配置存储库 此包将安装存储库配置以及工具 如 apt yum zypper 使用的 GPG 公钥来验证已签名的包和
  • 基于STM32CubeMX创建的STM32H743+DP83848+LWIP网络通信程序调试_20221127算是胎教级教程了

    目录 目的 编写一个可以稳定连接到局域网的STM32网络通信程序 硬件和软件 具体步骤 1 利用STM32CubeMX建立Keil工程文件 2 在keil中修改代码和配置工程 3 代码烧录 功能验证 目的 编写一个可以稳定连接到局域网的ST
  • 关于xpath的安装

    1 xpath简介 使用xpath需要安装模块 pip install lxml 导入模块 from lxml import etree xpath是用来载xml中查找指定的元素 它是一种路径表达式 详细内容可在文档中查找 https de
  • linux中软链接的使用方法

    在 Linux 中的连结有两种 一种是类似 Windows 的快捷方式功能的档案 可以让你快速的链接到目标档案 或目彔 另一种则是透过文件系统的 inode 连结来产生新的文档名 而不是产生新档案 这种称为实体链接 hard link Ha
  • C++ std::Thread多线程和mutex锁通俗易懂

    记录学习过程 如有新的发现 随时补充 如有错误或补充 请各位大佬指正 一 前言 多线程有多种方式 std Thread boost Thread pthread Windows库等 本文只关注std Thread 可以跨平台运行 二 std
  • 已解决-NVIDIA安装程序失败-win10

    这个错误界面没截图 去别的地方盗过来一个 我的电脑显示cuda版本是11 0的 所以一直努力装11 0版本的 新电脑刚开始装的前几次还没问题 卸的次数多了报应就来了 一直报错 整的都快崩溃了 现在解决了 我装的是10 0版本的 把方法贴出来
  • 使用Docker伪分布式安装hadoop

    1 安装Docker Desktop 官网地址 2 下载linux内核更新包 安装好Docker重启之后 会自动提示安装它 官网地址 3 重启计算机后打开docker desktop 4 win r 打开 cmd窗口 5 拉取镜像 dock
  • 在linux服务器上进行VTM的cmake并进行编解码

    前不多言 直接进入主题 一 上传VTM源码至linux服务器端 源码压缩包可以去这个网站进行下载 二 上传后使用linux操作命令解压 unzip xxx zip 三 解压后进行cmake操作 输入命令行进行操作 第一步 进入至解压后的vt
  • git操作总结

    git操作总结 一 配置Git 1 配置用户信息 安装git后 第一件事是配置用户名和邮件地址 记录是谁对文件进行了修改 global命令运行一次 永久生效 git config global user name git config gl