Git从了解到操作

Git常用命令

基本的linux命令

  • ls / ll 查看当前目录( ls 是查看目录有哪些文件夹,ll 是查看隐藏文件)
  • cat 查看文件内容
  • touch 创建文件
  • vi vi编辑器 (使用 vi 编辑器是为了方便展示效果,也可以记事本、editPlus、notPad++等其它编辑器)

备注

  • Git GUl: Git 提供的图形界面工具
  • Git Bash: Git 提供的命令行工具

当安装 Git 后首先要做的事情是设置用户名称和 email 地址。这是非常重要的,因为每次 Git 提交都会使用该用户信息 。

基本配置

  1. 打开Git Bash

  2. 设置用户信息

    • git config --global user.name “itcast”
    • git config --global user.email “hello@itcast.cn”
  3. 查看配置信息

    • git config --global user.name
    • git config --global user.email

为常用指令配置别名

有些常用的指令参数非常多,每次都要输入好多参数,我们可以使用别名。

  1. 打开用户目录,创建.bashrc文件
    部分 windows 系统不允许用户创建点号开头的文件,可以打开 gitBash , 执行 touch ~/.bashrc

  2. .bashrc 文件中输入如下内容

    #用于输出git提交日志
    alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
    #用于输出当前目录所有文件及基本信息
    alias ll='ls -al'
    

解决Gitbash乱码问题

  1. 打开 GitBash 执行下面命令

    git config --global core.quotepath false
    
  2. ${git_home}/etc/bash.bashrc 文件最后加入下面两行

    export LANG="zh_CN.UTF-8"
    export LC_ALL="zh_CN.UTF-8"
    

获取本地仓库

要使用 Git对我们的代码进行版本控制,首先需要获得本地仓库

  1. 在电脑的任意位置创建一个空目录(例如test)作为我们的本地Git仓库
  2. 进入这个目录中,点击右键打开Git bash窗口
  3. 执行命令git init
  4. 如果创建成功后可在文件夹下看到隐藏的.git目录。

基础操作指令

Git 工作目录下对于文件的修改(增加、删除、更新)会存在几个状态,这些修改的状态会随着我们执行Git的命令而发生变化。

在这里插入图片描述

  1. git add (工作区 -> 暂存区) git add .

  2. git commit (暂存区 -> 本地仓库) git commit -m "注释内容XXXXX"

  3. 查看当前状态 git status

  4. 查看提交日志 git log

    简化查看 git log --pretty=online --abbrev-commit --all --graph

  5. 从Git bash 中退出 vim 编辑浏览状态 使用:Esc+shift+z+z

  6. 版本回退 git reset --hard commitID

    • commitID 可以使用git log或者git-log查看
  7. 查看已经删除的记录 git reflog

  8. 添加文件至忽略列表

    一般我们总会有些文件无需纳入Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。在这种情况下,我们可以在工作目录中创建一个名为.gitignore 的文件(文件名称固定),列出要忽略的文件模式。

分支

查看本地分支

  • 命令: git branch

创建本地分支

  • 命令: git branch 分支名

切换分支(checkout)

  • 命令: git checkout 分支名
  • 命令: git checkout -b 分支名 直接切换到一个不存在的分支(创建并切换)

合并分支(merge)

一个分支上的提交可以合并到另一个分支

  • 命令: git merge 分支名称

删除分支

不能删除当前分支,只能删除其他分支

git branch-d b1 删除分支时,需要做各种检查

git branch -D b1 不做任何检查,强制删除

解决冲突

当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:

  1. 处理文件中冲突的地方
  2. 将解决完冲突的文件加入暂存区(add)
  3. 提交到仓库(commit)

Git 远程仓库

  • 生成SSH公钥
    • ssh-keygen -t rsa
    • 不断回车
      • 如果公钥存在,则自动覆盖
  • 设置账户公钥
    • 获取公钥
      • cat ~/.ssh/id_rsa.pub
    • 验证是否成功
      • ssh -T git@github.com 接着输入 yes

操作远程仓库

添加远程仓库

在这里插入图片描述

查看远程仓库

命令:git remote

推送到远程仓库

- `ssh -T git@github.com` 接着输入 yes

操作远程仓库

添加远程仓库

[外链图片转存中…(img-7NMntwa3-1726937621179)]

查看远程仓库

命令:git remote

推送到远程仓库

在这里插入图片描述

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

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

相关文章

docker基本(仅供自己参考)

一、大型项目部署的问题: 1、大型项目的组件比较多,运行环境很复杂,部署通常会遇到各种问题: (1):依赖关系复杂,容易出现兼容性问题 (2):开发、…

雪花算法Snowflake

雪花算法常用于分布式的项目中,是为了解决大数据产生的多表分表中,保证id的唯一性。 1.分布式的特点 全局唯一性:不能出现有重复ID的标识;地增性:确保生成的ID对用于用户或业务是递增的;高可用性&#xf…

施耐德EcoStruxure Machine SCADA Expert(EMSE)与SQL数据库连接(十五)

我习惯使用SQL Server 数据库与EMSE进行连接。 用的是sql 2017 关于数据库软件的安装教程 网上一大把。 1.新建数据库 打开数据库管理工具,新建数据库 2.新建表单 (ps:这里先做一个小测试-----目的是验证与EMSE软件的链接是否顺畅。) 添加两个元素进去…

flask的学习记录

结构如下: app.py from App import create_appapp create_app()if __name__ __main__:app.run(debugTrue,host0.0.0.0,port5000) App/__init__.py from flask import Flask, render_template, request, redirect, url_for from .views import blue from .exts …

VisualPromptGFSS

COCO-20 i ^i i太大,不建议复现

golang学习笔记1-go程序执行流程

声明:本人已有C,C,Python基础,只写本人认为的重点,方便自己回顾。 命令行执行go程序有两种方式,其流程如下图 注意第一种方式会得到可执行文件,第二种不会。 例1 在当前目录下编译hello.go go build hel…

TypeScript入门 (三)数据类型

引言 大家好,我是GISer Liu😁,一名热爱AI技术的GIS开发者。本系列文章是我跟随DataWhale 2024年9月学习赛的TypeScript学习总结文档。本文旨在全面介绍 TypeScript 中的各种数据类型,帮助读者深入理解每种数据类型的用法、内置属性…

Matlab simulink建模与仿真 第十九章(生成C代码)

一、Configuration Parameters模型参数配置 1、仿真时间 (1)在Solver选项卡中可以设置仿真的起始时间和结束时间,一般起始时间设为0,而结束时间按需设置。 (2)如果希望仿真不会自动暂停(也就…

Qwen大型语言模型系列的最新成果 ----Qwen2.5

通义千问2.5-7B-Instruct-GGUF 模型库 (modelscope.cn) apt install git-lfsgit lfs installgit clone https://www.modelscope.cn/qwen/Qwen2.5-7B-Instruct-GGUF.git

(done) 声音信号处理基础知识(3) (一个TODO: modulation 和 timbre 的关联)(强度、响度、音色)

来源:https://www.youtube.com/watch?vJkoysm1fHUw sound power 通常可以被认为是能量传输的速率 声源往所有方向传输的每时间单位能量 用 瓦特(W) 作为单位测量 Sound intensity 声音强度,每单位面积的 sound power W/m^2 人类实际上能听到非常小强…

Mybatis+Druid+MybatisPlus多数据源配置

MybatisDruidMybatisPlus多数据源配置 平常我们使用的是 properties 或者 yaml 来配置数据库的地址、用户名、密码等 但是这样只能配置一个数据源 现在我们想在一个项目里面配置多个数据源,那么我们就需要配置自己的配置类 配置类和配置文件 Mybatismysqldruid配置…

此框架你到底了解多少???

1.简述对Spring中IOC/DI的理解 IOC:控制反转,将创建和管理的对象的任务交给外部的Spring容器 DI:依赖注入,对象之间存在依赖关系,创建对象时,对其依赖的对应直接进行赋值 2.有哪些依赖注入的方式 基于注…

在线教程丨1 步生成 SOTA 级别图像,Hyper-SD 一键启动教程上线!

近年来,扩散模型在文生图任务中得到了广泛的应用,但其在实现高质量图像生成的过程中,通常需要多步推理进行去噪,这显然大大增加了计算资源成本。 针对于此,研究人员引入蒸馏算法,推出了扩撒感知蒸馏算法来…

超实用的 Typora 插件

🌼📚Typora 是一款高效、易用且跨平台的 Markdown 编辑器和阅读器,其具有小巧、快速、实时预览等特点,非常受大家的欢迎。今天给大家推荐一款如虎添翼的 Typora 插件(Typora Plugin),它可以通过插件增强 Typora 的功能…

什么是调制?FM 和 AM 有什么区别?

来源:https://www.bilibili.com/video/BV1pp411d7Zg/?spm_id_fromautoNext&vd_source7a1a0bc74158c6993c7355c5490fc600 一张图说明一切 原因:低频信号传输距离很近,高频信号传输距离较远。 为了把低频信号传出去,需要把低…

【数据结构C语言】【入门】【首次万字详细解析】入门阶段数据结构可能用到的C语言知识,一章让你看懂数据结构!!!!!!!

前言:欢迎各位光临本博客,这里小编带你直接手撕入门阶段的数据结构的C语言知识,让你不再看见数据结构就走不动道。文章并不复杂,愿诸君耐其心性,忘却杂尘,道有所长!!!&am…

图片马赛克处理(Java)

1.需求 给图片的指定区域打码给整张图片打码马赛克方格取色支持中心点取色和随机取色马赛克支持灰度处理 2.源码 package com.visy.utils;import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOE…

我们如何通过两个关键测试原则,进行自动化 Kubernetes 配置和Secret测试

现如今,一个上规模的应用程序几乎都会使用 Kubernetes 作为管理环境实现自动扩展、负载平衡(auto scaling, load balancing )等机制。与之相应的,我们通常会使用一个 repository 专门管理一个组织内部各项不同应用程序在各个环境的…

领夹麦克风怎么样,无线领夹麦克风哪个牌子好,家用麦克风推荐

​作为消费类电子产品,麦克风随着市场需求和技术进步,每年都有新产品系列涌现,特别是领夹麦克风,近年来经历了显著的市场变革和技术突破。从早期的新闻采访、节目录制和影视后期录音中常用的无线小蜜蜂话筒,到如今在网…

如何选择公司

前言: 了不起学弟:学长啊,我这手上有几个offer,有几家不同种类的公司,我这该怎么选啊。。。 了不起:这确实是在正在找工作的同学一定会遇到的问题,如何选择公司。那我就给你讲一讲吧。 正文&…