git的操作命令有哪些、PyCharm 中常用的 Git 操作命令、-b参数的使用、stash命令在git中的使用、rebase在git中的使用

1 git的操作命令有哪些
2 PyCharm 中常用的 Git 操作命令
3 -b参数的使用
4 stash命令在git中的使用
5 rebase在git中的使用

1 git的操作命令有哪些

1. **初始化一个新的仓库**:
   git init

2. **克隆仓库**:
   git clone <repository_url>

3. **添加文件到暂存区**:
   git add <file1> <file2> ...
   或者 
   git add .  # 一定要注意后面的这个点
   

4. **提交更改**:
   git commit -m "Commit message"

5. **查看状态**:
   git status

6. **查看提交历史**:
   git log

7. **创建分支**:
   git branch <branch_name>

8. **切换分支**:
   git checkout <branch_name>

9. **合并分支**:
   git merge <branch_name>


10. **拉取远程仓库的变化**:
    git pull

11. **推送本地提交到远程仓库**:
    git push

12. **查看远程仓库**:
    git remote -v

13. **添加远程仓库**:
    git remote add <remote_name> <repository_url>

14. **创建并切换到新分支**:
    git checkout -b <branch_name>

15. **删除分支**:
    git branch -d <branch_name>

16. **撤销工作目录中的修改**:
    git checkout -- <file>

17. **撤销已暂存的修改**:
    git reset HEAD <file>

18. **重置当前分支到指定提交**:
	git reset --hard <commit_hash>


19. **查看远程仓库的分支**:
    git branch -r

20. **创建标签**:
    git tag <tag_name>

2 PyCharm 中常用的 Git 操作命令

1. **克隆仓库**:
   - 命令:`git clone <repository_url>`
   - 示例:在 PyCharm 中选择 "VCS" -> "Get from Version Control" -> "Git",然后输入远程仓库的 URL 并点击 "Clone"2. **添加文件到暂存区**:
   - 命令:`git add <file1> <file2> ...`
   - 示例:在项目视图中右键单击要添加的文件或文件夹,然后选择 "Git" -> "Add"3. **提交更改**:
   - 命令:`git commit -m "Commit message"`
   - 示例:使用快捷键 "Ctrl + K"(Windows/Linux)或 "Cmd + K"(Mac),然后在弹出的对话框中输入提交消息并点击 "Commit"4. **拉取远程仓库的变化**:
   - 命令:`git pull`
   - 示例:选择 "VCS" -> "Git" -> "Pull"5. **推送本地提交到远程仓库**:
   - 命令:`git push`
   - 示例:选择 "VCS" -> "Git" -> "Push"6. **查看提交历史**:
   - 命令:`git log`
   - 示例:选择 "VCS" -> "Show Changes View",然后点击 "Log" 选项卡。

7. **创建分支**:
   - 命令:`git branch <branch_name>`
   - 示例:选择 "VCS" -> "Git" -> "Branches" -> "New Branch",然后输入分支名称并点击 "Create".

8. **切换分支**:
   - 命令:`git checkout <branch_name>`
   - 示例:选择 "VCS" -> "Git" -> "Branches",然后右键单击要切换的分支并选择 "Checkout".

9. **合并分支**:
   - 命令:`git merge <branch_name>`
   - 示例:选择 "VCS" -> "Git" -> "Merge Changes",然后选择要合并的分支并点击 "Merge".

10. **撤销工作目录中的修改**:
    - 命令:`git checkout -- <file>`
    - 示例:在文件视图中右键单击要撤销修改的文件,然后选择 "Git" -> "Revert".

11. **查看远程仓库的分支**:
    - 命令:`git branch -r`
    - 示例:选择 "VCS" -> "Git" -> "Branches",然后在远程分支下查看。

3 -b参数的使用

在 Git 中,`-b` 参数通常与 `git checkout` 命令一起使用,用于创建并切换到新的分支。
具体用法是:
	git checkout -b <branch_name>

这条命令的含义是:在当前所在的分支基础上创建一个新的分支 `<branch_name>`,
然后切换到这个新创建的分支上。

举个例子,假设你当前在 `master` 分支上,想要创建并切换到一个新的分支 `feature` 上,
可以使用以下命令:
	git checkout -b feature


这个命令等同于以下两条命令的组合:
	git branch feature   # 创建一个名为 feature 的分支
	git checkout feature  # 切换到 feature 分支

使用 `-b` 参数可以简化这个过程,让这两个步骤合并为一步。这对于快速创建并切换到新分支是非常方便的。

4 stash命令在git中的使用


在 Git 中,`stash` 是一个非常有用的功能,它允许你在切换分支或者处理其他任务时,
暂时将当前工作目录的修改存储起来,以便稍后恢复。

以下是 `stash` 在 Git 中的使用方法:

1. **暂存工作目录的修改**:
   git stash
   这个命令会将工作目录中未暂存的修改(包括已跟踪和未跟踪的文件)存储到一个临时的存储区域中。

2. **查看暂存区域的修改**:
   git stash list
   这个命令会列出当前存在的所有 stash。

3. **应用最近一次 stash**:
   git stash apply
   这个命令会将最近一次 stash 的修改应用到当前工作目录,但不会删除 stash。

4. **应用指定的 stash**:
   git stash apply stash@{n}
   这个命令会将指定的 stash(`stash@{n}` 中的 `n` 是 stash 的索引)的修改应用到当前工作目录,但不会删除 stash。

5. **删除最近一次 stash**:
   git stash drop
   这个命令会删除最近一次 stash。

6. **删除指定的 stash**:
   git stash drop stash@{n}
   这个命令会删除指定的 stash(`stash@{n}` 中的 `n` 是 stash 的索引)。

7. **应用并删除最近一次 stash**:
   git stash pop
   这个命令会将最近一次 stash 的修改应用到当前工作目录,并删除该 stash。

8. **清除所有 stash**:
   git stash clear
   这个命令会删除所有 stash。

`stash` 功能非常方便,特别是当你需要暂时保存当前工作进度并切换到其他任务时。
通过 `stash`,你可以确保你的修改不会丢失,并且可以随时恢复到之前的状态。

5 rebase在git中的使用

在 Git 中,`rebase` 是一个用于将一个分支的修改应用到另一个分支的操作,它可以将一系列的提交重新应用到另一个基底上。
相比于 `merge``rebase` 会重新组织提交历史,使得分支合并后的提交历史更加清晰。

以下是 `rebase` 在 Git 中的使用方法:

1. **基本的 rebase 操作**:
   git checkout <feature_branch>
   git rebase <base_branch>
   这个命令会将 `<feature_branch>` 分支上的修改重新应用到 `<base_branch>` 分支的顶端。在这个过程中,Git 会将 `<feature_branch>` 分支上的提交逐个应用到 `<base_branch>` 分支上,并且重新构建提交历史。

2. **交互式 rebase**:
   git rebase -i <base_branch>
   这个命令会打开一个交互式的界面,允许你对 rebase 过程进行更精细的控制。你可以在这个界面中对提交进行重新排序、合并、编辑提交消息等操作。

3. **跳过提交**:
   如果在 rebase 过程中遇到冲突或者需要跳过某些提交,可以使用 `--skip` 选项:
   git rebase --skip

4. **中止 rebase**:
   如果在 rebase 过程中出现问题,可以使用 `--abort` 选项中止 rebase:
   git rebase --abort

5. **强制 rebase**:
   如果你知道自己在做什么,并且确定要强制执行 rebase,可以使用 `-f``--force` 选项:
   git rebase -f <base_branch>

`rebase` 可以使得分支的提交历史更加线性和清晰,但需要注意的是,由于 `rebase` 会改写提交历史,
因此在与他人共享的分支上使用 `rebase` 时,需要谨慎操作,以免导致提交历史的混乱。

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

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

相关文章

快速构建vscode pytest 开发测试环境

如果不想用 heavy 的pycharm vscode 也是1个很好的选择 安装python SDK pacman -S python [gatemanmanjaro-x13 tmp]$ pacman -Q python python 3.11.8-1安装Vscode 很多中方法 yay -S visual-studio-code-bin [gatemanmanjaro-x13 tmp]$ pacman -Q | grep -i visual visua…

关于怎么计算重复路段的算法问题

这是代码&#xff1a; #define _CRT_SECURE_NO_WARNINGS #define MAX_TEST 100 #include<stdio.h> int main() {int l, m;int u0, v0,j0;int arr[MAX_TEST][10] {0};int count0;scanf("%d", &l);scanf("%d", &m);if (l < 500 &…

性能优化(一):ArrayList还是LinkedList?

引言 集合作为一种存储数据的容器&#xff0c;是我们日常开发中使用最频繁的对象类型之一。JDK为开发者提供了一系列的集合类型&#xff0c;这些集合类型使用不同的数据结构来实现。因此&#xff0c;不同的集合类型&#xff0c;使用场景也不同。 很多同学在面试的时候&#x…

短视频矩阵系统ai剪辑 矩阵 文案 无人直播四合一功能核心独家源头saas开发

抖去推矩阵AI小程序是一款针对短视频平台的智能创作和运营工具&#xff0c;它具有以下功能特点&#xff1a; 1.批量视频生成&#xff1a;抖去推可以在短时间内生成大量视频&#xff0c;帮助商家快速制作出适合在短视频平台上推广的内容 2.全行业覆盖&#xff1a;适用于多个行业…

环形链表面试题详解

A. 环形链表1 给你一个链表的头节点 head &#xff0c;判断链表中是否有环. 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置…

每日OJ题_贪心算法二⑦_力扣942. 增减字符串匹配

目录 力扣942. 增减字符串匹配 解析代码 力扣942. 增减字符串匹配 942. 增减字符串匹配 难度 简单 由范围 [0,n] 内所有整数组成的 n 1 个整数的排列序列可以表示为长度为 n 的字符串 s &#xff0c;其中: 如果 perm[i] < perm[i 1] &#xff0c;那么 s[i] I 如果 …

奈氏准则和香农定理

一、奈奎斯特和香农 哈里奈奎斯特&#xff08;Harry Nyquist&#xff09;(左) 克劳德艾尔伍德香农&#xff08;Claude Elwood Shannon&#xff09;(右) 我们应该在心里记住他们&#xff0c;记住所有为人类伟大事业做出贡献的人&#xff0c;因为他们我们的生活变得越来越精彩&…

计算机毕业设计Python+Spark考研预测系统 考研推荐系统 考研数据分析 考研大数据 大数据毕业设计 大数据毕设

安顺学院本科毕业论文(设计)题目申请表 院别&#xff1a;数学与计算机科学 专业&#xff1a;数据科学与大数据 时间&#xff1a;2022年 5月26日 题 目 情 况 题目名称 基于hive数据仓库的考研信息离线分析系统的设计与实现 学生姓名 杨娣荧 学号 201903144042 …

【Hadoop】--基于hadoop和hive实现聊天数据统计分析,构建聊天数据分析报表[17]

目录 一、需求分析 1、背景介绍 2、目标 3、需求 4、数据内容 5、建库建表 二、ETL数据清洗 1、数据问题 2、需求 3、实现 4、扩展概念&#xff1a;ETL 三、指标计算 1、指标1&#xff1a;统计今日消息总量 2、指标2&#xff1a;统计每小时消息量、发送量和接收用…

shpfile转GeoJSON;控制shp转GeoJSON的精度;如何获取GeoJSON;GeoJSON是什么有什么用;GeoJSON结构详解(带数据示例)

目录 一、GeoJSON是什么 二、GeoJSON的结构组成 2.1、点&#xff08;Point&#xff09;数据示例 2.2、线&#xff08;LineString&#xff09;数据示例 2.3、面&#xff08;Polygon&#xff09;数据示例 2.4、特征&#xff08;Feature&#xff09;数据示例 2.5、特征集合&…

Leetcode—1056. 易混淆数【简单】Plus

2024每日刷题&#xff08;126&#xff09; Leetcode—1056. 易混淆数 &#x1f4a9;山实现代码 class Solution { public:bool confusingNumber(int n) {int arr[10] {0};int notNum 0;int arr2[12] {0};int size 0;while(n) {int x n % 10;arr[x] 1;arr2[size] x;if(…

自动化测试适用场景

日常大家都用自动化去写测试脚本。但是自动化可不仅仅可以工作写脚本&#xff0c;还可以应用到如下领域&#xff1a; 1. 自动化测试脚本&#xff1a;自动化测试是软件测试 领域中最常见的自动化应用领域。它可以通过 自动化测试工具和脚本来自动化执行测试用例 &#xff0c…

水仙花数问题

问题描述&#xff1a; 求出0&#xff5e;100000之间的所有“水仙花数”并输出。 “水仙花数”是指一个n位数&#xff0c;其各位数字的n次方之和确好等于该数本身&#xff0c;如:153&#xff1d;1^3&#xff0b;5^3&#xff0b;3^3&#xff0c;则153是一个“水仙花数”。 #in…

VS Code 保存+格式化代码

在 VSCode 中&#xff0c;使用 Ctrl S 快捷键直接保存并格式化代码&#xff1a; 打开 VSCode 的设置界面&#xff1a;File -> Preferences -> Settings在设置界面搜索框中输入“format on save”&#xff0c;勾选“Editor: Format On Save”选项&#xff0c;表示在保存…

Java 【数据结构】常见排序算法实用详解(下) 冒泡排序/快速排序/归并排序/非基于比较排序【贤者的庇护】

登神长阶 上古神器-常见排序算法 冒泡排序/快速排序/归并排序/非基于比较排序 &#x1f4b0;一.前言 为保障知识获取的可读性&#xff0c;以及连贯性&#xff0c;再开始可以适当的重新温习前文内容 &#xff1a;Java 【数据结构】常见排序算法实用详解&#xff08;上&#xf…

TWS 蓝牙耳机 ESD EOS保护方案

1. TWS 蓝牙耳机 TWS&#xff08;True Wireless Stereo&#xff09;蓝牙耳机是指没有传统连接线的完全无线耳机&#xff0c;通常由两个分别放置在耳朵中的独立耳机组成&#xff0c;提供立体声音效。这类耳机在近年来越来越受欢迎&#xff0c;因为它们提供了更自由、更便捷的音…

有限单元法-编程与软件应用(崔济东、沈雪龙)【PDF下载】

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《有限元编程从入门到精通》本专栏旨在提供 1.以案例的形式讲解各类有限元问题的程序实现&#xff0c;并提供所有案例完整源码&#xff1b;2.单元…

MLP手写数字识别(3)-使用tf.data.Dataset模块制作模型输入(tensorflow)

1、tensorflow版本查看 import tensorflow as tfprint(Tensorflow Version:{}.format(tf.__version__)) print(tf.config.list_physical_devices())2、MNIST数据集下载与预处理 (train_images,train_labels),(test_images,test_labels) tf.keras.datasets.mnist.load_data()…

JSON.toJSONString() 输出 “$ref“:“$[0]“问题解决及原因分析

一、背景 在构建一个公共的批处理方法类的时候&#xff0c;在测试输出的时候&#xff0c;打印了" r e f " : " ref":" ref":"[0][0]"的内容&#xff0c;这让我比较疑惑。不由得继续了下去… 二、问题分析 首先&#xff0c;我们需要…
最新文章