Git常见命令行操作和IDEA图形化界面操作

设置Git用户名和标签

在安装完Git以后需要设置用户和签名,至于为什么要设置用户签名可以看一下这篇文章【学了就忘】Git基础 — 11.配置Git用户签名说明 - 简书 (jianshu.com)

基本语法:
git config --global user.name 用户名

git config --global user.email 邮箱

查看是否设置成功:
方式一:在git控制台中输入命令git ~/.gitconfig

方式二:查看用户目录小面的.gitconfig文件

配置SSH免密登录 

拉取代码管理仓库的第二种方式就是通过SSH来获取,首先点击SSH 

 

第二步去配置SSH

 

第三步,检查本地是否存在密钥,如果存在id_ras(私钥)、id_ras_pub(公钥)这两个文件则说明已经创建过了,直接拷贝即可

 

$ls ~/.ssh

如果不需要这份可以删除,注意这份密钥没有在使用,移除之后就无法恢复了,之前所使用的地方也需要使用新的:

$ rm -rf ~/.ssh/id_rsa
$ rm -rf ~/.ssh/id_rsa.pub 

创建密钥(存在密钥的可以跳过) 邮箱记得填写自己的

$ ssh-keygen -t rsa -C "youremail@example.com"

 

然后将得到的公钥文件里面的内容拷贝到上面,并点击生成

 

后面在拉取代码的时候就复制SSH链接就行

 

 

 

 

 

 

 

初始化文件

基本语法:

git init

初始化以后会在项目目录下面多一个.git文件,如果没有,需要打开隐藏目录 

Git添加本地库以及查看日志的基本命令 

查看本地库状态

基本语法:

git status

 提交一个文件以后:

添加文件到暂存区(工作目录的暂存区中)

基本语法:
git add

提交代码到本地库(形成历史版本) 

基本命令
git commit -m "日志信息" 文件名

Git版本更新

编辑并发布第二个版本:

版本切换 

查看版本信息

基本语法:
简单日志:git reflog
详细日志:git log

版本切换 

基本语法:git reset --hard 版本号

分支 

什么是分支

        在版本控制过程中,同时推进多个任务,为每个任务,我们可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)

查看分支

基本语法:

git branch -v

 分支前面带*号,表示当前分支

创建分支

基本语法

git branch 分支名

切换分支 

基本语法

git branch checkout 分支名

在新添加的分支下面修改代码,然后提交到该分支:

 

创建并切换分支 

基本语法:

git checkout -b 新分支名字

 

上面从图片中可以看出分支虽然建立成功了,但是没有关联上远程分支,所以在拉去或者提交的时候,控制台中都会报There is no tracking information for the current branch.

这个时候需要手动关联远程分支: git push --set-upstream origin 远程分支名字

或者是使用这种方式来关联:git push --set-upstream origin 本地分支名字:远程分支名字 

切换分支之前需要手动提交代码到暂存区或者远程分支上面,不然切换到其他分支以后,当前分支未提交的代码将会消失 

 

我们一般在协同开发的时候,有可能需要切换到别人的分支上面去看一下对方是怎么写的,这个时候我们在切换分支之前就需要先将我们的分支提交到本地或者远程,如果没有提交就切换分支:

1.会导致我们未提交的代码消失,当我们切换回来的时候看到的是我们上一次提交的代码;

 

 

2.如果选择智能切换 

 

不仅会影响到自己未提交的代码,操作不当,还会影响到你在别人分支上面看到的代码。别人分支代码是最右侧的,如果你选择了最左侧你的代码,或者是两边代码都选择了,那么你在别人的分支上面看到的代码就不是别人正确的代码。 

 

而且最要命的是如果选择了上面两种,在别人分支上面切换回来的时候又会提示代码冲突,又需要解决冲突,这个时候最好的选择就是强制切换,强制切换以后回到的是上一次提交的代码。如果选择智能切换会出现一下的问题:

注意:在别人分支上面切换回自己分支的时候千万不要去提交别人的代码 

 

 

合并分支(把指定的分支合并到当前分支上) 

正常合并(master分支没有做调整,dev/test...分支做了调整,合并到master分支上,代码没有冲突)

冲突合并(要合并的两个分支代码存在差异,Git不能确定要保留那个,需要手动合并) 

合并完分支以后记得提交代码 

删除分支 

基本语法:
删除已合并的本地分支——git branch -d 分支名字

强制删除未合并的本地分支——git branch -D 分支名字

删除远程分支——git push origin --delete 分支名字

注意:在删除分支之前需要切换到其他分支

将代码提交到本地或者远程

如果你有一次代码提交到了本地仓库,但是没有推送到远程仓库。当你下一次换另一个版本来提交时,会将你前后两次提交到本地的代码都推送到远程仓库:

这个时候如果从新拉取远程的代码,就会拉取到目前远程所展示的代码。我们还会发现,在我们后面的提交中,会看到将test.txt文件移送到test目录下面的这个变化,我们在控制台中使用git status命令的时候,也会发现之前有一个改变没有提交:

当我们将这个改变提交到远程仓库以后,远程仓库对应的代码就会被删除

 

当然我们我们想在暂存区将这个删除的动作取消,我们可以使用"git restore --staged <file>命令,使用这个命令以后不会改变本地和远程分支目前的代码状况,也就是说,远程分支上面还是会有test.txt文件,而本地分支依然没有该文件。 

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

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

相关文章

SpringBoot项目创建及简单使用

目录 一.SpringBoot项目 1.1SpringBoot的介绍 1.2SpringBoot优点 二.SpringBoot项目的创建 三.注意点 一.SpringBoot项目 1.1SpringBoot的介绍 Spring是为了简化Java程序而开发的&#xff0c;那么SpringBoot则是为了简化Spring程序的。 Spring 框架&#xff1a; Spring…

ARM之栈与方法

ARM之栈与方法 计算机中的栈是一种线性表&#xff0c;它被限定只能在一端进行插入和删除操作&#xff08;先进后出&#xff09;。通常将可以插入和删除操作的一端称为栈顶&#xff0c;相对的一端为栈底。 通常栈有递增堆栈&#xff08;向高地址方向生长&#xff09;、递减堆栈…

鸿蒙OpenHarmony【搭建Ubuntu环境】

搭建Ubuntu环境 在嵌入式开发中&#xff0c;很多开发者习惯于使用Windows进行代码的编辑&#xff0c;比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段&#xff0c;大部分的开发板源码还不支持在Windows环境下进行编译&#xff0c;如Hi3861、Hi3516…

Day37 IO流的操作

Day37 IO流的操作 文章目录 Day37 IO流的操作Java的文件拷贝利用 文件字节输出流 向文件写入数据利用 文件字节输入流 读取文件里的数据利用 带缓冲区的字节输出流 向文件写入数据利用 带有缓冲区的字节输入流 读取文件里的数据利用 字符输出转换流 向文件写入数据利用 字符输入…

Java全套智慧校园系统源码springboot+elmentui +Quartz可视化校园管理平台系统源码 建设智慧校园的5大关键技术

Java全套智慧校园系统源码springbootelmentui Quartz可视化校园管理平台系统源码 建设智慧校园的5大关键技术 智慧校园指的是以物联网为基础的智慧化的校园工作、学习和生活一体化环境&#xff0c;这个一体化环境以各种应用服务系统为载体&#xff0c;将教学、科研、管理和校园…

豆瓣影评信息爬取 (爬虫)

代码块&#xff1a; from lxml import etree import requestsheaders{User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0 }url_list[] for i in range(0,5):i*20urlsf"https:…

day02-新增员工

day01 新增员工业务逻辑整理 EmployeeController.java PostMappingApiOperation("新增员工")public Result save(RequestBody EmployeeDTO employeeDTO){System.out.println("当前线程的ID:" Thread.currentThread().getId());log.info("新增员工&a…

[leetcode] 56. 合并区间

文章目录 题目描述解题方法排序java代码复杂度分析 题目描述 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组&#xff0c;该数组需恰好覆盖输入中的所有区…

UWB人员定位系统适用的场景有哪些?​​​​​​​10厘米工业级实时轨迹高精度定位

UWB人员定位系统适用的场景有哪些&#xff1f;10厘米工业级实时轨迹高精度定位 一、应用场景 1、商场与零售领域&#xff1a;商场可以使用UWB人员定位系统来跟踪顾客的行踪&#xff0c;以收集顾客行为数据&#xff0c;为营销策略提供有力支持。帮助商场优化商品布局和陈列&…

在龙梦迷你电脑福珑2.0上使用Fedora 28 龙梦版

在龙梦迷你电脑福珑2.0上使用Fedora 28 龙梦版。这个版本的操作系统ISO文件是&#xff1a;Fedora28_for_loongson_MATE_Live_7.2.iso 。它在功能方面不错。能放音乐&#xff0c;能看cctv直播&#xff0c;有声音&#xff0c;能录屏&#xff0c;能在局域网里用PuTTY的ssh方式连接…

【Java EE】依赖注入DI详解

文章目录 &#x1f334;什么是依赖注入&#x1f340;依赖注入的三种方法&#x1f338;属性注入(Field Injection)&#x1f338;构造方法注入&#x1f338;Setter注入&#x1f338;三种注入优缺点分析 &#x1f333;Autowired存在的问题&#x1f332;解决Autowired对应多个对象问…

dp思维 枚举

题目链接 #include<bits/stdc.h> using namespace std; #define i64 long long const i64 mod 1e9 7; int main() {int n;cin >> n;vector<char>s(n 1);for (int i 1; i < n; i) {cin >> s[i];}//用ans记录所有满足条件的答案数量&#xff0c;c…

SQL增加主键约束的条件

结论 常见认为设为主键的条件为&#xff1a; 值唯一不含空值 具体实施中会出现各种问题 添加主键约束的条件细则&#xff1a; 值唯一数据中不含空值在定义时需要not null约束&#xff08;使用check约束不行&#xff09; 验证实验 接下来我做了关于这个细则的验证实验&am…

万物皆可计算|下一个风口:近内存计算-2

虽然PIM可以有缓解内存墙的问题&#xff0c;但是PIM设计面临着一系列技术和工程上的挑战&#xff0c;这些挑战直接影响着PIM技术的实用化和广泛应用&#xff1a; 地址翻译与操作映射&#xff1a; 在传统计算机体系结构中&#xff0c;地址空间由操作系统管理和调度&#xff0c;通…

万物皆可计算|下一个风口:近内存计算-1

传统的冯诺依曼架构虽然广泛应用于各类计算系统&#xff0c;但其分离的数据存储与处理单元导致了数据传输瓶颈&#xff0c;特别是在处理内存密集型任务时&#xff0c;CPU或GPU需要频繁地从内存中读取数据进行运算&#xff0c;然后再将结果写回内存&#xff0c;这一过程涉及大量…

Vue3:响应式数据的基本使用(ref、reactive)

一、前言 在Vue3中&#xff0c;如果数据不是响应式数据&#xff0c;当数据的值发生改变时&#xff0c;页面上的数据是不会发生改变的。因此本文主要介绍Vue3中响应式数据的使用&#xff0c;包括ref和reactive的基本使用。 二、ref 1、ref —— 创建基本类型的响应式数据 re…

电大搜题微信公众号:重庆开放大学学子的学习利器

在当今信息化时代&#xff0c;学习已经成为每个人不可或缺的一部分。然而&#xff0c;对于重庆开放大学的学子们来说&#xff0c;由于远程教育的特殊性&#xff0c;他们面临着更大的学习挑战。幸运的是&#xff0c;他们现在可以依靠一款强大的学习利器——电大搜题微信公众号&a…

软考中级网络工程师-2024上岸宝典

1.软考是什么 简单说就是计算机技术 相关的国家级证书考试&#xff0c;想听专业点给大家截一张官网的图&#xff0c;不想听废话直接往下。 同为国家级证书的&#xff1a;注册会计师、法律职业资格证、一级建筑师&#xff0c;证书的价值是比较高的。 很多人都是在求职前或者大…

【面试经典 150 | 二叉树层序遍历】二叉树的右视图

文章目录 写在前面Tag题目来源解题思路方法一&#xff1a;层序遍历方法二&#xff1a;深度优先搜索 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对于…

全球媒体发稿:海外发稿数字期刊Digital Journal

全球媒体发稿&#xff1a;海外发稿数字期刊Digital Journal ​官网&#xff1a; digitaljournal.com 数字期刊&#xff0c;加拿大知名门户&#xff0c;月访量超过30万。 是一个全球媒体平台和内容合作伙伴&#xff0c;通过捕捉和报道第一&#xff0c;提升新闻周期中的声…