Linux:Git

Git常见指令:

git  help  xx_command
git  xx_command  --help git   --version                            查看git版本git config --global user.name  "xxx_name"       全局级别的签名设置,全局的放在本用
git config --global user.email "xxx@gmail.com"  户的家目录下的.gitconfig文件中git config user.name "xxx_name"            项目级别的签名设置,放在工作仓库的.git/config里面
git config user.email "xxxxx@gmail.com"    项目级别的签名设置,放在工作仓库的.git/config里面git config --list                        查看配置
git config --global --list               查看全局配置
git config --global --edit               编辑全局配置git init                                 初始化本地仓库,会在当前目录下创建一个.git的目录git status                               查看仓库当前状态
git status  -uno                         查看仓库当前状态,忽略未跟踪的文件git add  [file name]                     本地写好的文件放到暂存区域git add .                              等于 git add -A 或者 git add --allgit add 这个命令处理后面可以增加 pathname,也可以增加参数git add 默认不加参数,表示他会监控工作区的状态,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。git add -u(--update),仅添加已经被git跟踪的文件(tracked file),会将修改(文件内容修改和文件删除)的文件提交到暂存区。git add -u 不会提交新文件(untracked file)。git add --all(-A, --no-ignore-removal),是上面两个的合集,即会把修改的文件加到暂存区,也会把新建的文件加到暂存区,同时还会把已经工作区删除了的文件从暂存区删除掉。git restoregit restore --staged                 将暂存区的文件从暂存区撤出,但不会更改文件文件的内容。git restore xxx                      撤销在工作空间但是不在暂存区的文件更改,如恢复工作区删除的文件xxxgit rm --cached <file>...                删除暂存区域的文件,和本地区域没关系git commit  [file name]                  把暂存区域内容,维护到本地仓库git commit -agit commit -m "commit message" [file name]    不进入到文本模式,进行更改记录的添加git commit --message="commmint message log" [file name]git commit --amend                   修正上次的提交,可以使用上一次的提交信息,也可以对上次提交的内容进行修改。git commit -m "xxx" 提交之后,发现-m的说明文字写的有问题,想要重新写提交信息,或者又修改了某些文件,利用上次的提交信息并作部分修改,这个时候可以用命令 git commit --amend  -m "xxx"  覆盖上一次的提交信息进行commit提交,且上次的提交信息不会出现在提交 git log中git commit -s -m XXX                 在git log 的时候会多展示 signed-off-by  行git commit -a -m XXX                 相当于先git add .  再git commit -m  XXXgit log                                  查看版本的更新日志,使用空格一屏一屏的切换git log --stat                           查看提交记录,显示文件列表改动,不包括内容改动git log -n                               n表示只显示最近n次的记录git log --pretty=oneline                 每次提交显示一行(全hash值)git log --oneline                        每次提交显示一行(哈希值的前7位)git reflog                               HEAD@{x}中x表示从当前版本回退到某个版本HEAD指针要移动的次数git log --oneline --decorate --graph --all   图像化的方式显示出分支创建后的版本迭代过程git log --oneline --graphgit log --oneline -n --graph             n表示只显示最近n次的记录git log -- filename(git log filename)    可以看到该文件相关的commit记录git log -p filename                      可以显示该文件每次提交的difflog一页显示不全,英文状态下按Q退出git log 命令,按空格或者回车显示下面的信息git reset    
--hard                            git reset --hard                       查看当前HEAD指向的版本git reset --hard  xxxxxxx              基于索引值(哈希值),xxxxxxx就是哈希值的前几位git reset --hard  HEAD^                基于^符号,只能向老版本回滚,不能向新版本回滚。向后回滚一个版本,HEAD后面的就一个^;向后回滚2个,在HEAD后面就使用两个^^git reset --hard  HEAD~n               基于~符号。只能向后回滚,回滚版本数n。git reset -–hard origin/master         回退到与远程master代码一样
--hard这个参数在一定情况下会有一定的危险。比如在工作区内容没提交工本地库之前,使用了--hard命令把本地库的内容重置到工作区和暂存区,会导致工作区更改的内容丢失。git reset --mixed
git reset --softgit branch\ git checkoutgit branch   分支名xx                     创建分支xxgit checkout 分支名xx                     切换到分支xxgit checkout -b 分支名xx                  基于当前分支(commit)创建并切换到分支xxgit checkout -b 分支名xx commit_id        基于commit_id创建并切换到分支xxgit checkout commit_id                    基于commit_id切到临时分支,可用于实验性修改git branch -d xx                          删除分支xxgit branch -D xx                          强制删除分支xxgit branch                                列出当前分支清单,列出所有分支git branch -a                             查看远程分支和本地分支git branch -r                             查看远程的分支名git branch -v                             查看各个分支最后一个提交信息git branch --merged                       查看哪些分支已经合并入当前分支git merge 要合并的(from)分支名称       要先切换到接受修改的(to)分支上,由接受修改的分支来执行merge合并命令git commit -m "commit msg"                分支冲突解决后,提交不能有文件名git remote -v                             查看当前的远程仓库连接
git remote add origin URL                 为远程库取个别名,叫origingit pushgit push <远程主机名> <本地分支名>  <远程分支名>    如 git  push  origin  master:refs/for/master   将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名。git push origin master             如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建git push -u origin master          如果当前分支与多个主机存在追踪关系,则可以使用 -u 参数指定一个默认主机,这样后面就可以不加任何参数使用git pushgit push origin               如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支 git push                      如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名git clonegit clone URL           1完整的把远程库下载到本地  2创建origin远程库别名  3初始化本地库git clone -b 分支名  仓库地址  存放路径    克隆指定的分支到本地目录,然后在该目录下push时,对应的就是push到远端的对应分支。git clone --recursive URL     递归克隆项目下面的所有git项目git fetch [远程库别名] [远程库分支]     将远程主机的内容拉到本地,不合并
git merge [远程库别名/远程库分支]       本地合并远程库内容
当然上面这两步可以用一个操作 git pull 来统一完成git pullgit pull 命令的作用是:将远程主机的内容拉下来后直接合并,即:git pull = git fetch + git merge,可能会产生冲突,需要手动解决。它的完整格式稍稍有点复杂。git pull [<options>] [<repository> [<refspec>…​]]git pull  <远程主机名>   <远程分支名>:<本地分支名>比如,要取回origin主机的next分支,与本地的master分支合并,需要写成下面这样:git pull origin next:master如果远程分支(next)要与当前分支合并,则冒号后面的部分可以省略。上面命令可以简写为:git pull origin next什么时候使用  git pull [远程主机名] [远程分支名] [本地分支名]  ?修改比较简单,确定不会产生合并冲突的时候。什么时候使用git fetch [远程主机名] [远程分子名],git merge [远程库名/远程分支名] [本地分支]远程仓库的修改可能和本地仓库产生冲突的时候,可以先把远程仓库的放到本地。经过对比之类后,再进行合并(也要解决冲突)。git rm如果是对所有文件都取消跟踪的话,就是git rm -r --cached .   //不删除本地文件git rm -r --f .        //删除本地文件对某个文件取消跟踪git rm --cached readme1.txt    删除readme1.txt的跟踪,并保留在本地。git rm --f readme1.txt         删除readme1.txt的跟踪,并且删除本地文件。当需要删除暂存区或分支上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用 git rm --cached xxxgit rm --cached 会从index里面删除该文件,下次commit的时候会修改git仓库,但是本地的文件还是保留git blame                        显示文件的每一行最后修改的版本和作者用法:git blame [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-e] [-p] [-w] [--      incremental] [-L n,m]  [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>] [--abbrev=<n>]  [<rev> | --contents <file> | --reverse <rev>] [--] <file>例如,git blame -L 100,120   xx.cgit diffgit diff    //比较工作区与暂存的(git add 后)的差别,一个文件可以在commit之前多次addgit diff --cached || --staged          //比较暂存区文件 与上一次commit 的差别git diff branch1 branch2 --stat        //显示出所有有差异的文件列表git diff branch1 branch2 具体文件路径   //显示指定文件的详细差异git diff branch1 branch2               //显示出所有有差异的文件的详细差异

Linux下Git仓库管理:

 

 

.gitignore 凡是在这个文件内部的后缀,对应的文件,不会被上传到gitee上!
.git 所谓的git仓库,本质就是一个目录,.git文件里面的内容。
push:本质上就是将.git里面的内容同步到gitee上去,也就是上传本地内容!

日志不能乱写!git log

如果Linux没有安装Git :sudo apt install git ,当你首次安装Git时,会提示你进行配置用户名和邮箱。

向Gitee提交流程:

mkdir example
mv /path /path/example/
git add [文件名]  #添加到暂存区 add .
git commit .  #提交改动到本地
git push     #同步到远端服务器上,需要填用户名和密码
git status   #查看git的变化
git rm filename #删除仓库文件,再commit,再push
git log  #查看日志
git pull #如果远端对文件修改,则本地同步

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【WiFi】WiFi中RSSI、SNR、NF之间关系及说明

RSSI&#xff08;接收信号强度指示&#xff09; 定义&#xff1a; RSSI 是一个相对值&#xff0c;用于表示接收到的无线信号的强度。它通常由无线设备的硬件&#xff08;如无线网卡或无线芯片&#xff09;直接提供。 计算&#xff1a; RSSI 的计算通常是由设备的无线芯片完成的…

[ZMQ] -- ZMQ通信Protobuf数据结构 1

1、前言背景 工作需要域间实现zmq通信&#xff0c;刚开始需要比较简单的数据结构&#xff0c;比如两个bool&#xff0c;后面可能就需要传输比较大的数据&#xff0c;所以记录下实现流程&#xff0c;至于为啥选择proto数据结构去做大数据传输&#xff0c;可能是地平线也用这个&…

顺序表的使用,对数据的增删改查

主函数&#xff1a; 3.c #include "3.h"//头文件调用 SqlListptr sql_cerate()//创建顺序表函数 {SqlListptr ptr(SqlListptr)malloc(sizeof(SqlList));//在堆区申请连续的空间if(NULLptr){printf("创建失败\n");return NULL;//如果没有申请成功&#xff…

5G中的随机接入过程可以不用收RAR?

有朋友提到了一种不用接收RAR的RA过程&#xff0c;问这个是怎么回事。其实在刚刚写过的LTM cell switch篇章中就有提到&#xff0c;这里把所有相关的内容整理如下。 在RACH-less LTM场景&#xff0c;在进行LTM cell switch之前就要先知道target cell的TA信息&#xff0c;进而才…

git 导出某段时间修改的文件 windows

第一步&#xff1a;列出两次commitID之间的文件变动 git diff oldid newid --name-only// 例如 git diff 4a886c57a8b5611a2abcfcd120461c2e92f7029a HEAD --name-only 4a886c57a8b5611a2abcfcd120461c2e92f7029a 代表之前 HEAD 代表最新或者换成某次commitID 例如&#xf…

Qt 联合Halcon配置

文章目录 配置代码窗口绑定 配置 选择添加库 选择外部库 LIBS -LC:/Program Files/MVTec/HALCON-17.12-Progress/lib/x64-win64/ LIBS -lhalconcpp\-lhdevenginecpp\-lhalconINCLUDEPATH C:/Program Files/MVTec/HALCON-17.12-Progress/include DEPENDPATH C:/Program Fil…

new URL(`../assets/images/${name}`, import.meta.url).href

背景&#xff1a; 文章讲述了Vite框架中关于资源文件&#xff08;如图片&#xff09;在默认配置下&#xff0c;如何正确处理开发环境和打包后的不同引用方式。重点介绍了使用import.meta.url和new URL() 来动态获取并处理静态资源URL的方法&#xff0c;以及注意事项&#xff0…

Tiptap,: 富文本编辑器入门与案例分析

Tiptap 是一个现代的富文本编辑器&#xff0c;基于 ProseMirror 打造&#xff0c;旨在提供一个灵活且功能强大的文本编辑解决方案。它具有开箱即用的能力&#xff0c;同时也允许开发者根据业务需求进行高度定制化扩展。与传统的富文本编辑器相比&#xff0c;Tiptap 提供了更精细…

Java基础学习:java常用启动命令

一、java -jar 1、系统属性传递 使用形式&#xff1a;java -DpathD:\jacoco -jar 获取方式&#xff1a;System.getProperties() 2、系统参数传递 使用形式&#xff1a;java -jar application.jar --jacocoPathD:\tomcat 获取方式&#xff1a;通过启动方法入口main的参数arg…

负载均衡oj项目:介绍

目录 项目介绍 项目演示 项目介绍 负载均衡oj是一个基于bs模式的项目。 用户使用浏览器向oj模块提交代码&#xff0c;oj模块会在所有在线的后端主机中选择一个负载情况最低的主机&#xff0c;将用户的代码提交给该主机&#xff0c;该主机进行编译运行&#xff0c;将结果返回…

gateway 微服务的入口-笔记

本文属于b站图灵课堂springcloud笔记系列。讲的好还不要钱&#xff0c;值得推荐。 为什么需要API网关&#xff1f; 客户端多次请求不同的微服务&#xff0c;会增加客户端代码和配置的复杂性&#xff0c;维护成本比价高认证复杂&#xff0c;每个微服务可能存在不同的认证方式&…

vue2+element-ui实现多行行内表格编辑

效果图展示 当在表格中点击编辑按钮时:点击的行变成文本框且数据回显可以点击确定按钮修改数据或者取消修改回退数据: 具体实现步骤 1. 行数据定义编辑标记 行数据定义编辑标记 当在组件中获取到用于表格展示数据的方法中,针对每一行数据添加一个编辑标记 this.list.f…

安卓主板_MTK联发科android主板方案

在当前智能设备的发展中&#xff0c;安卓主板的配置灵活性和性能优化显得尤为重要。安卓主板的联发科方案&#xff0c;在芯片上&#xff0c;搭载联发科MTK6761、MT8766、MT6765、MT6762、MT8768、MT8390、MTK8370以及MT8788等型号&#xff0c;均基于64位的四核或八核架构设计。…

如何破解“不会写作”的烦恼

在人生的诸多烦恼中&#xff0c;有一种烦恼或许不那么显眼&#xff0c;却常常如影随形&#xff0c;让人倍感困扰——那就是不会写作的烦恼。这不仅仅是对那些以写作为生的人而言&#xff0c;对于每一个需要在学习、工作或生活中以文字表达思想、情感的人来说&#xff0c;不会写…

虚幻5描边轮廓材质

很多游戏内都有这种描边效果&#xff0c;挺实用也挺好看的&#xff0c;简单复刻一下 效果演示&#xff1a; Linethickness可以控制轮廓线条的粗细 这样连完&#xff0c;然后放到网格体细节的覆层材质上即可 可以自己更改粗细大小和颜色

【JavaEE】网络(2)

一、网络编程套接字 1.1 基础概念 【网络编程】指网络上的主机&#xff0c;通过不同的进程&#xff0c;以编程的方式实现网络通信&#xff1b;当然&#xff0c;我们只要满足进程不同就行&#xff0c;所以即便是同一个主机&#xff0c;只要是不同进程&#xff0c;基于网络来传…

RANS(Reynolds-Averaged Navier-Stokes) 湍流模型类型

RANS&#xff08;Reynolds-Averaged Navier-Stokes&#xff09; 湍流模型有多种不同的类型&#xff0c;除了标准的 kkk-ω 湍流模型&#xff0c;还有其他一些常用的湍流模型。RANS 模型的核心思想是对 Navier-Stokes 方程进行 雷诺平均&#xff0c;通过将流动场的瞬时变量分解为…

vue绕过rules自定义编写动态校验

今天犯了个低级错误&#xff0c;虽然走了很多弯路&#xff0c;但这个过程还是值得记录一下 例子如下&#xff0c;有两个输入框&#xff1a; 第一个是套餐选择下拉框&#xff0c;可以下拉选择三个内容 第二个要根据上面的套餐选择三个选项来决定怎么显示&#xff0c;使用v-if&…

数字化招聘系统如何帮助企业实现招聘效率翻倍提升?

众所周知&#xff0c;传统的招聘方式已经难以满足现代企业对人才的需求&#xff0c;而数字化招聘系统的出现&#xff0c;为企业提供了全新的解决方案。通过数字化招聘系统&#xff0c;企业可以自动化处理繁琐的招聘流程&#xff0c;快速筛选合适的候选人&#xff0c;从而大幅提…

短视频矩阵源码开发部署全流程解析

在当今的数字化时代&#xff0c;短视频已成为人们娱乐、学习和社交的重要方式。短视频矩阵系统的开发与部署&#xff0c;对于希望在这一领域脱颖而出的企业和个人而言&#xff0c;至关重要。本文将详细阐述短视频矩阵源码的开发与部署流程&#xff0c;并附上部分源代码示例&…