算法之工程化内容(2)—— Git常用命令

目录

1. git初始化配置

2. 新建仓库

3. 工作区——>暂存区——>本地仓库

4. git reset回退版本

5. 查看差异 git diff

6. 删除文件git rm

7. .gitignore

8. vscode操作git

9. git分支、合并和删除

10. 解决合并冲突

11. 回退和rebase

12. 添加远程仓库

参考链接:

01.课程简介_哔哩哔哩_bilibili


1. git初始化配置

查看版本号:git -v
配置用户:git config --global user.name 'huanhaunwang'
配置邮箱:git config --global user.email 'whh@nit.zju.edu.cn'
保存配置:git config --global credential.helper store
查看配置:git config --global list

2. 新建仓库

git clone http://github.xxx.com
mkdir learn-git
cd learn-git
git init / git init my-repo       # 初始化my-repo仓库
cd .git
ls -alltr

3. 工作区——>暂存区——>本地仓库

工作区——>暂存区:git add . 
暂存区——>本地仓库:git commit -m 'xxx'      # 'xxx'为commit的描述

###### 添加和提交文件
初始化本地仓库:git init
查看状态:git status
工作区-->暂存区:git add .
        --> 提交txt文件到暂存区:git add *.txt
        --> 删除暂存区内容:git rm --cached <file>
暂存区-->本地仓库:git commit -m 'description'
写内容到file1.txt:echo 'This is the first file' > file1.txt
提交记录:git log/ git log --oneline

4. git reset回退版本

git reset三种模式

工作区

暂存区

git reset --soft

git reset --hard

git reset --mixed

  • 查看暂存区内容:git ls-files
  • 当出现误操作时:查看历史所有操作 git reflog --> 回退指定版本号 git reset --hard xxx(版本号)

5. 查看差异 git diff

(工作区/暂存区/本地仓库,不同版本v1/v2/v3,不同分支)

git diff v1_num v2_num
git diff HEAD~ HEAD
git diff HEAD~2 HEAD
git diff HEAD~3 HEAD
git diff HEAD~3 HEAD <file>
git diff HEAD^ HEAD
git diff <branch_name> <branch_name>

6. 删除文件git rm

工作区&暂存区同时删除:git rm <file> --> git commit -m 'delete <file>'
工作区删除-->暂存区删除-->本地仓库删除:rm <file> --> git add <file> / git add. --> git commit -m 'delete <file>'
暂存区缓存删除:git rm --cached <file>

7. .gitignore

忽略所有log日志:echo '*.log' > .gitignore --> git add . --> git commit -m 'commit .gitignore'
忽略temp下的所有内容:echo 'temp/' > .gitignore --> git add . --> git commit -m 'commit .gitignore'
忽略所有的.a文件:*.a
忽略任何目录名为temp/的文件夹

8. vscode操作git

9. git分支、合并和删除

查看分支:git branch
创建分支:git branch/checkout <branch-name>
切换分支:git switch <branch-name>
合并分支:切换到main/master主分支 --> git merge <branch-name>
删除分支:
    (1)已合并:git branch -d <branch-name>
    (2)未合并:git branch -D <branch-name>
查看分支创建&合并流程:git log --graph --oneline --decorate --all
  • git log --graph --oneline --decorate --all

10. 解决合并冲突

解决合并:vi <main_conflict.txt> --> git add . --> git commit -m 'solve conflict'
终止合并:git merge --abort

11. 回退和rebase

12. 添加远程仓库

克隆远程仓库:git clone ssh链接(此命令需要提前配好ssh -key.pub)
给远程仓库命别名:git remote add <远程仓库别名> ssh链接 
    e.g. git remote add origin git@github.com:xxx/xxx/xxx.git

切换分支:git branch main/master
推送本地 --> remote远程:git push -u <远程仓库别名> <分支名>
查看远程仓库:git remote -v
拉取remote远程 --> 本地:git pull / git pull -u <远程仓库别名> <远程分支名>:<本地分支名>

(1)远程-->本地:
    1)手动修改远程
    2)拉取到本地:git pull = git fetch + git merge
(2)本地-->远程:
    1)手动修改本地文件
    2)添加至缓存区:git add.
    3)提交到本地仓库:git commit -m 'description'
    4)推送/更新远程仓库:git push

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Web 性能入门指南-1.5 创建 Web 性能优化文化的最佳实践

最成功的网站都有什么共同点&#xff1f;那就是他们都有很强的网站性能和可用性文化。以下是一些经过验证的有效技巧和最佳实践&#xff0c;可帮助您建立健康、快乐、值得庆祝的性能文化。 创建强大的性能优化文化意味着在你的公司或团队中创建一个如下所示的反馈循环&#xff…

C语言:指针详解(5)

目录 一、sizeof()函数和strlen()函数的对比 1.sizeof()函数 2.strlen()函数 3.sizeof()函数和strlen()函数的对比 二、数组和指针笔试试题解析 1.一维数组 2.字符数组 &#xff08;1&#xff09;代码1 &#xff08;2&#xff09;代码2 &#xff08;3&#xff09;代码…

pytorch训练的时候 shm共享内存不足,导致训练停止

1.查看shm情况 df -h /dev/shm内存已经满了&#xff0c;因为之前训练多次训练意外停止到shm中的缓存不能及时被清理 2、手动清理shm 依然没被释放 3、查看关联的进程&#xff0c;一个一个kill lsof |grep deletedkill -9 46619 44618 44617 。。。。。4、搞定

vue中父子传递属性值

1、父传子属性值 自定义图库组件 在add.vue中应用tuku组件并给默认值 效果 2、 子传父&#xff0c;逆向赋值 add.vue和第一问中一样 修改tuku组件&#xff0c;传值给add.vue 3、多个传递 效果&#xff1a; 点击两个修改按钮后 4、使用defineModel简化父子传值 其他代码跟…

python作业三

1.使用requests模块获取这个json文件http://java-api.super-yx.com/html/hello.json 2.将获取到的json转为dict 3.将dict保存为hello.json文件 4.用io流写一个copy(src,dst)函数,复制hello.json到C:\hello.json import json import shutilimport requests #使用requests模块获…

OceanBase:引领下一代分布式数据库技术的前沿

OceanBase的基本概念 定义和特点 OceanBase是一款由蚂蚁金服开发的分布式关系数据库系统&#xff0c;旨在提供高性能、高可用性和强一致性的数据库服务。它结合了关系数据库和分布式系统的优势&#xff0c;适用于大规模数据处理和高并发业务场景。其核心特点包括&#xff1a; …

【C/C++积累技巧】实现 连续播放文件图片+逐帧文本显示, 同时 可以按任意键退出(基于easyx小游戏编程)

技巧一、使用 IMAGE数组循环&#xff1a;实现【连续播放图片】 &#xff08;1&#xff09;一张图片如何放映在 图形化窗口上&#xff1a;借用两个函数 #include<graphics.h> // 函数的头文件IMAGE imgMy; // 图形变量 loadimage(&imgMy, "写入你想显示的图片路…

软件开发面试题(C#语言,.NET框架)

1. 解释什么是委托&#xff08;Delegate&#xff09;&#xff0c;并举例说明它在C#中的用法。 委托是一种引用类型&#xff0c;它可以用于封装一个或多个方法。委托对象可以像方法一样调用&#xff0c;甚至可以用于创建事件处理程序。委托是C#中实现事件和回调函数的重要机制。…

Hive表【汇总】

提前必备 1、内部表和外部表的区别 概念讲解&#xff1a; 外部表&#xff1a;1、存放他人给予自己的数据2、当我们删除表操作时&#xff0c;会将表的元数据删除&#xff0c;保留数据文件 内部表&#xff1a;1、存放已有的数据2、当我们删除表操作时&#xff0c;会将表的元数据…

Unity 优化合集

1️⃣ 贴图优化 1. Read/Write Enable 这个属性勾选后允许你在运行时读取和写入纹理数据&#xff0c;这对于需要实时生成内容或者需要动态修改纹理的场合非常有用但在大部分情况下这是不必要的。如果打开这个属性&#xff0c;会使运行时贴图大小翻倍&#xff0c;内存中会额外…

缓存与分布式锁

一、缓存 1、缓存使用 为了系统性能的提升&#xff0c;我们一般都会将部分数据放入缓存中&#xff0c;加速访问。 适合放入缓存的数据有&#xff1a; 即时性、数据一致性要求不高的&#xff1b;访问量大且更新频率不高的数据。 在开发中&#xff0c;凡是放入缓存中的数据我们都…

Git 命令行快速入门

前言 &#xff08;1&#xff09;新手个人建议使用TortoiseGit这类图形化界面来上手学习。 &#xff08;2&#xff09;如果一定需要用命令行进行操作&#xff0c;可以按照B站&#xff1a;程式与网页开发者必备技能&#xff01;Git 和 GitHub 零基础快速上手&#xff0c;轻松掌握…

构造与操作链栈

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍+ 收藏⭐ + 留言​📝心态决定高度,细节决定成败! 链栈是数据结构中栈的一种实现方式,它利用链表(通常是单链表)来存储栈中的元…

【触摸屏】【红十字会学习系统】功能模块:视频 + AI拍照合成

项目背景 提升公众急救能力&#xff1a;确保每个人都能在紧急情况下采取正确的急救措施&#xff0c;减少伤害&#xff0c;挽救生命。培养人道主义价值观&#xff1a;通过教育和培训&#xff0c;传播红十字精神&#xff0c;促进社会对弱势群体的关注与支持。建立社区响应网络&a…

1. InternLM - 入门岛

第1关 Linux 基础知识 1. 完成SSH连接与端口映射并运行hello_world.py SSH连接配置 # wsl2中生成密钥对&#xff08;~/.ssh/id_rsa, ~/.ssh/id_rsa.pub&#xff09; ssh-keygen -t rsa# 将id_rsa.pub在internStudio作为公钥导入SSH登录 $ ssh -p 38871 rootssh.intern-ai.o…

5.SpringBoot核心源码-启动类源码分析

目录 概述技巧spring boot 如何启动应用程序run方法里面核心逻辑 SpringApplicaiton.run(xxx.class,args)结束 概述 SpringBoot核心源码-启动类源码分析 技巧 如何给外部源码加注释&#xff0c;想要在源码中添加自己的注释&#xff0c;会弹出 file is read only&#xff0c;代…

Java核心技术【二十二】Java的I/O流处理:深入文件读写操作、缓冲流、序列化与NIO

Java的I/O流处理&#xff1a;深入文件读写操作、缓冲流、序列化 在Java编程中&#xff0c;I/O流是处理输入输出操作的基础&#xff0c;特别是在文件读写、网络通信等领域。本文将在前文的基础上&#xff0c;进一步探讨缓冲流、序列化以及NIO&#xff08;New I/O&#xff09;在…

从0开始的STM32HAL库学习2

外部中断(HAL库GPIO讲解) 今天我们会详细地学习STM32CubeMX配置外部中断&#xff0c;并且讲解HAL库的GPIO的各种函数。 准备工作&#xff1a; 1、STM32开发板&#xff08;我的是STM32F103C8T6&#xff09; 2、STM32CubeMx软件、 IDE&#xff1a; Keil软件 3、STM32F1xx/ST…

01- 收入数据集【Pytorch入门实战】

目录 一、机器学习基础 二、实战例子 1.数据集分析 2.实战训练 3.总结 三、参考资料 一、机器学习基础 为了解决这个问题&#xff0c;人们想到数据驱动方法&#xff0c;也就是让计算机从现有的大量的带标签图片电学习规律&#xff0c;一旦计算机学习到了其中的规律&…

sip协议栈简介

SIP协议栈简介 SIP协议栈流程 数据链路层&#xff1a;当SIP消息从网络中传输到达TCP/IP协议栈时&#xff0c;首先被接收到的是数据链路层的数据帧。数据链路层会对数据帧进行解封装&#xff0c;得到网络层的IP数据报。 网络层&#xff1a;网络层会对IP数据报进行解析&#xf…