首页 > 其他分享 >Git一些命令

Git一些命令

时间:2023-06-07 20:44:39浏览次数:48  
标签:git -- 命令 Git user 版本 一些 config email

快捷键
复制粘贴
复制:ctrl+shift+C或Ctrl+insert
粘贴:ctrl+shift+S或Shift+insert

光标
跳转至行首:ctrl+a
跳转至行尾:ctrl+e
行首/当前位置光标跳转:ctrl+x

编辑
粘帖上一次命令最后的参数:alt+.
删除光标左侧单词:ctrl+w
删除光标右侧单词:alt+d
删除光标左侧所有字符:ctrl+u
删除光标右侧所有字符:ctrl+k
清屏:ctrl+l

命令
下一条命令:ctrl+n
上一条命令:ctrl+p
向上翻页:shift+PageUp
向下翻页:shift+PageDown
查找命令历史记录,输入keyword多次ctrl+r可返回下一个匹配项:ctrl+r

常用命令
新建文件:touch
新建目录:mkdir
删除文件:rm
删除文件夹(recusive):rm -r
移动文件:mv
列出文件:ls
打印工作目录:pwd
改变目录:cd
清屏:reset

配置

查看git配置信息
$ git config --list

查看指定配置信息(用户名、密码、邮箱)
$ git config user.name
$ git config user.password
$ git config user.email

添加配置
$ git config user.name "yourName"
$ git config user.password "123456"
$ git config user.email "[email protected]"
添加全局配置
$ git config --global user.name "yourName"
$ git config --global user.password "123456"
$ git config --global user.email "[email protected]"

修改配置(与添加语法一致)
$ git config user.name "yourName"
$ git config user.password "123456"
$ git config user.email "[email protected]"
修改全局配置
$ git config --global user.name "yourName"
$ git config --global user.password "123456"
$ git config --global user.email "[email protected]"

替换配置
$ git config --replace-all user.name "yourName"
$ git config --replace-all user.password "123456"
$ git config --replace-all user.email "[email protected]"
替换全局配置
$ git config --global --replace-all user.name "yourName"
$ git config --global --replace-all user.password "123456"
$ git config --global --replace-all user.email "[email protected]"

删除配置
$ git config --unset user.name "yourName"
$ git config --unset user.password "123456"
$ git config --unset user.email "[email protected]"
删除全局配置
$ git config --global --unset user.name "yourName"
$ git config --global --unset user.password "123456"
$ git config --global --unset user.email "[email protected]"

概念

仓库

仓库,就是你存在.git目录的那个文件夹内的所有文件,包括隐藏的文件,Git程序会再当前目录以及上级目录查找是否存在.git文件,如果存在,则会将.git目录存在的文件夹开始下的所有文件当成你需要管理的文件

分支

分支功能解决了正在开发的版本与上线版本稳定性冲突的问题在Git使用过程中,我们的默认分支一般是Master,当然,这是可以修改的,我们在Master完成一次开发,生成了一个稳定版本,那么当我们需要添加新功能或者做修改时,只需要新建一个分支,然后在该分支上开发,完成后合并到主分支即可

同步

同步,也可以称之为拉取,在Git中是非常频繁的操作,和SVN不同,Git的所有仓库之间是平等的,所以,为了保证代码一致性,尽可能的在每次操作前进行一次同步操作,具体的为在工作目录下执行如下命令:
git pull origin master

暂存

暂存只是针对你最后一次改动而言,即针对当前所在的版本的所有改动都算

将当前改动暂存起来:
git stash

恢复最后一次暂存的改动
git stash pop

查看有多少暂存
git stash list

合并

合并这个命令通常情况下是用于两个分支的合并,一般用于本地分支,远程分支多用Pull命令,该命令的功能是将待合并分支与目标分支合并在一起,注意,这个命令只会合并当前版本之前的差异,两个分支的提交历史会根据提交时间重新组织索引,故只可能会产生一次冲突但是会生成一个提交,如果你不想生成这次提交,加上 --base参数即可

上传和同步

初始化
git init

添加仓库地址
git remote add origin https://gitee.com/xxxxxxxxxx

放入暂存区,add后面跟随路径或文件名, . 表示当前目录所有内容,在主项目内开始选择文件路径,路径格式为:git add src/src/xxxxx
git add xxxx.文件
git add .

提交到本地仓库
git commit -m "注释的内容"

推送本地到远程
git push
git push origi

拉取远程到本地
git pull
git pull origin master

请记住, pull 是一次获取和一次 merge
git pull命令的作用是:取回远程主机某个分支的更新,再与本地的指定分支合并
git pull origin master表示将远程origin主机的master分支拉取过来和本地的当前分支进行合并
详细如下
1、git pull origin master 从 origin 远程的 master 分支获取提交(到本地 origin/master 分支),然后 merge origin/master 进入您当前 checkout 的分支
2、git pull 仅当您 checkout 的分支正在跟踪上游分支时才有效;例如,如果您 checkout 的分支跟踪 origin/master,则 git pull 等同于 git pull origin master

强制上传,-f
git push -u origin master -f

查看仓库链接状态
git remote show
git remote -v

远程仓库版本不一致解决方法
1、撤销本次git commit 和 git add
git reset HEAD^
2、远程拉取本地分支合并
git pull origin master
3、重新add

版本管理

介绍

1、我们在git中的每一次 git commit 操作就会提交一个历史版本
2、每一个历史版本都有一个唯一的hash值进行记录
3、每一个历史版本实际上就是我们对工作区中的内容修改的一次记录
4、因此,当我们像退回到某个修改的时候,只需要退回到某个版本即可
5、在git的版本管理中,有一个叫做HEAD的标记,这个标记就是一个用来指向当前版本的指针
6、因此,当我们进行版本回退或版本切换的时候,实际上是移动HEAD指针的位置。
7、版本回退或版本穿梭之后,可以在对应的版本上进行操作,及提交,提交后便会正常生成一次历史记录

查看

查看详细历史记录,按提交时间倒叙排列,包含提交时间,提交作者,提交备注以及提交的hash值
git log

格式化log形式,每条log只有一行,只包含 完整的hash值 和 提交的备注
git log --pretty=oneline

格式化log形式,每条log只有一行,只包含 短hash值 和 提交的备注
git log --oneline

【注】2和3的区别就是 展示的hash值的长短,短hash就是完整hash截取了前7位的表示形式。

只展示最新的 几条 日志,-n 后面的数字就表示 要展示的条数
git log -n 3

会展示历史提交的分支路线
git log --graph

【注】 参数可以结合使用
比如 git log --oneline -n 3 : 即一行一行的展示+只展示最近的3次提交记录
比如 git log --oneline --graph : 即一行一行的展示+展示提交的路线

展示短hash+HEAD{n}+提交备注,非常方便用来进行历史版本的回退与任意版本的切换
git reflog

表示只看最近的两次提交
git reflog -n 2

【注】 git log 和 git reflog 的区别
git log : 只展示 当前版本之前的版本,即HEAD指针指向的版本及之前的历史版本
git reflog : 会展示所有的历史提交版本,非常的全

可以查看历史提交的改动的文件
git log --stat

回退和操作思路

1、使用 git log 或者 git reflog 命令 获取到要回退或者切换的版本id
2、使用 git reset --hard命令回退/切换到某个历史版本
3、git reset --hard 命令会重置 本地仓库、暂存区和工作区,三者的状态保持一致

版本回退/切换
可切换到任意版本[推荐使用这个方式]
git reset --hard [索引值]

只能后退,一个 ^ 表示回退一个版本,两个^ 表示回退两个版本,依次类推
git reset --hard HEAD^

只能后退,n表示后退n个版本
git reset --hard HEAD~n

标签:git,--,命令,Git,user,版本,一些,config,email
From: https://www.cnblogs.com/vibmike/p/17464493.html

相关文章

  • Redis五大数据类型以及常用命令
    Redis五大数据类型以及常用命令redis常用五大数据类型String(字符串)、List(列表)、Hash(哈希表)、Set(无序集合)、Zset(有序集合)redis数据库常见使用命令redis-server : redis服务器启动命令redis-cli : 客户端,操作入口select【dbid】 : 切换数据库dbsize : 查看当前数据库k......
  • 常用的文件操作命令
    vim,vi光标跳转到文首/文末/行首/行尾若在Insert模式下,需要先按一下Esc,文首:按gg(区分大小写)文末:按G(区分大小写)(跳转到行首和行尾,各有两种方法:)行首:①按option②按0(数字0)行尾:按fn+左右上下键......
  • Jenkins使用之如何让Jenkins以管理员身份来执行批处理命令
    在Jenkins界面中,单击左侧导航栏中的“系统管理”;在“系统管理”页面上,单击“系统设置”;在“系统设置”页面上,找到“环境变量”;在“环境变量”一栏中,单击“新增”;在“新增环境变量”,输入以下内容:名称:JENKINS_NODE_PROPERTIES值:user.name=Administrator保存更......
  • git clone出现remote error: Repository not found错误
    出现这种错误的时候,需要确定几件事情1.确定远端项目是否存在2.自己是否有gitclone权限3.查看自己的凭据是否正确主要说一下凭据查看 看一下自己的用户名和密码是否正确!!! ......
  • 恒电流间歇滴定法(GITT)测试锂离子电池的实验流程
    恒电流间歇滴定法(GITT)测试锂离子电池的实验流程锂电池作为现代电子设备中最常用的电源之一,其性能和安全性对于设备的正常运行至关重要。恒电流间歇滴定测试是一种常用的测试方法,用于评估锂电池的容量、循环寿命和内阻等关键参数。1、确定测试目的和参数:在进行恒电流间歇滴定测试之......
  • Mininet基本命令
    Mininet基本命令:1.检查Mininet版本mn--version2.清理现有的ovs网桥和命名空间注意:有时我们错误地关闭了mininetshell,或者mininet崩溃了。但拓扑组件将继续存在。要清理这些东西,请使用清理命令。mn-c3.我们的第一个拓扑(单一)具有单个交换机和4个节点的拓扑。......
  • Linux分析进程占用内存最高和占用CPU最高 的 命令
    Linux分析进程占用内存最高和占用CPU最高这里只显示最高的前5个,如果想显示更多的话,可以自己修改:查看占用内存最高的5个进程psaux|sort-k4nr|head-n5查看占用cpu最高的5个进程psaux|sort-k3nr|head-n5......
  • Electron+vue+element ui+vscode+git桌面程序-小白篇 超详细
    一.说明背景:有需求,要求做一个简单的桌面程序。调研后决定采用:web方式写页面,然后打包为桌面程序选技术为:Nodejs+Electron+vue+elementui+vscode+git二.环境Node.js应用基于js,所以需要先安装Node.js。(建议LTS)下载地址:https://nodejs.org/zh-cn/download/ 下载完成后,傻瓜式一键安装......
  • Windows 命令行软件管理器
    Windows命令行软件管理器chocolatey了解chocolateychocolatey这是一个Windows下的命令行软件管理器,可以方便开发者像在Linux下使用yum命令来安装软件,或者像在macOS下使用brew命令来安装软件,非常酷炫。Thebiggestchallengeisreducingduplicationofeffort,souserstu......
  • 用我这5年多的经历告诉你:一些无力吐槽的自动化现状……好自为之
    从2017年6月开始接触自动化至今,已经有5年了,从刚接触UI自动化(unittest+selenium)到接触接口自动化(unittest+requests)再到自己编写自动化平台(后台使用python的flask,前端使用element+vue,没有第三方自动化框架),不断的学习成长,加深了对自动化测试的理解,这边就总结下自己对自动化测试的认......