GIT常用命令大全——赶紧收藏_git命令大全-程序员宅基地

技术标签: GIT  git  

史上最全的GIT常用命令都在这里啦!

全是干货!建议收藏起来,反复观看!

一、git安装后-指定名称和邮箱

$ git config --global user.name "Your Name"

$ git config --global user.email "[email protected]"

二、创建版本库

$ mkdir learngit	//创建
$ cd learngit	//使用
$ pwd	//查看当前目录
$ git init	//初始化,生成.git文件(若该文件隐藏,则使用ls -ah)

*三、把文件添加add和提交commit到版本库

$ git add test.txt	//添加
$ git commit -m "wrote a test file"	//提交
$ git commit -m "add 3 files."		//一次性提交多个文件

注意:必须在当前版本库和当前目录下

*四、版本控制

$ git log	//查看提交历史记录,从最近到最远,可以看到3次
$ git log --pretty=oneline	//加参,简洁查看
$ git reflog	//查看每一次修改历史
$ cat test.txt	//查看文件内容
$ git status	//查看工作区中文件当前状态
$ git reset --hard HEAD^(HEAD~100)(commit id)	//回退版本
$ git checkout -- test.txt	//丢弃工作区的修改,即撤销修改
$ git reset HEAD test.txt	//丢弃暂存区的修改(若已提交,则回退)

五、删除文件

$ rm test.txt
//直接删除
$ git rm test.txt
$ git commit -m "remove test.txt"
//删错了,恢复
$ git checkout -- test.txt

*六、远程仓库

$ ssh-keygen -t rsa -C "[email protected]"	//创建SSH Key
$ git remote add origin [email protected]:Daisy/AKgit.git	//关联
$ git push -u origin master	//将本地内容推送到远程仓库(第一次)
$ git push origin master	//将本地内容推送到远程仓库(之后)
$ git remote -v        //查看远程仓库信息
$ git remote rm origin	//删除远程仓库(解绑)
$ git clone [email protected]: Daisy/AKgit.git	//克隆远程仓库
//克隆之后使用和查看
$ cd gitskills
$ ls
$ git remote	//查看远程库的信息
$ git remote -v	//查看远程库的详细信息

*七、多人协作

$ git checkout -b dev	//创建并切换到分支dev
//创建并切换到分支dev,同上
$ git branch dev	//创建
$ git checkout dev	//切换
//新版本
$ git switch -c dev	//创建并切换到分支dev
$ git switch master	//直接切换分支
$ git branch		//查看当前分支
$ git merge dev	(--no-ff)(-m)//合并,把dev分支的工作成果合并到master分支上
$ git branch -d dev	//删除dev分支 
$ git stash	//将现场储藏起来
$ git stash list	//查看储存的工作现场
//恢复和删除
$ git stash apply
$ git stash drop
//恢复并删除
$ git stash pop
$ git cherry-pick 4c805e2	//复制修改
$ git push origin master(dev)	//推送分支
$ git checkout -b dev origin/dev	//创建远程origin的dev分支到本地
$ git pull	//抓取分支(解决冲突)
$ git branch --set-upstream-to=origin/dev dev//指定本地与远程dev的链接
$ git rebase	//把本地未push的分叉提交历史整理成直线

八、标签管理

$ git tag v1.0	//打标签
$ git tag -a v0.1 -m "version 0.1 released" 1094adb //指定标签名和说明文字
$ git tag	//查看所有标签
//若是忘记打,则查找历史提交commit id ,再打上
$ git log --pretty=oneline --abbrev-commit
$ git tag v0.9 f52c633
$ git show v0.9		//查看标签详细信息
$ git tag -d v0.1	//删除标签
$ git push origin v1.0	//推送标签到远程
$ git push origin –tags	//一次性推送全部本地标签
//删除标签,(若已推送到远程,先从本地删除,从远程删除)
$ git tag -d v0.9
$ git push origin :refs/tags/v0.9 

九、自定义git

$ git config --global color.ui true	//让git显示颜色
//忽略特殊文件
//.gitignore文件
# Windows:
Thumbs.db
ehthumbs.db
Desktop.ini
# Python:
*.py[cod]
*.so
*.egg
*.egg-info
dist
build
# My configurations:
db.ini
deploy_key_rsa
//把该文件也提交到git
$ git add -f App.class		//强制添加被忽略的特殊文件
$ git check-ignore -v App.class	//检查哪个规则出错
# 排除所有.开头的隐藏文件:
.*
# 排除所有.class文件:
*.class
# 不排除.gitignore和App.class:
!.gitignore
!App.class
$ git config --global alias.st status	//配置别名
$ git config --global alias.unstage 'reset HEAD'  //配置操作别名
$ git config --global alias.last 'log -1'	//显示最后一次提交信息
$ git last	//显示最近一次的提交
$git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"  //颜色
$ cat .git/config //查看每个仓库的git配置文件
$ cat .gitconfig  //查看当前用户的git配置文件

如果大家觉得这些命令太多,可以只记带红色星号*的,其他命令等需要用到的时候,再从收藏夹里找出来看。

既然宝子都看到这里了,点个赞应该不过分叭,别逼我……!!跪下来求你~~宝~

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_49851451/article/details/123944431

智能推荐

安卓APP闪退-程序员宅基地

文章浏览阅读185次。final Intent intent=new Intent(this,Servicetest1.class)位置放到onCreate()外面,那么就会出现闪退。如果在调试的时候闪退,很可能是语句的位置出现了问题,至今位置我发生过2次闪退,2次都是语句位置不对。我觉得那个时候Sercicetest1.class类可能还没有加载完吧。首先:语句没有问题,可以通过编译,那么就是位置不对了-----逻辑问题。例如如果把这个里面的。

Java中 四种引用(强引用 软引用 弱引用 虚引用)_java中的四种引用关系由强到弱 site:blog.csdn.net-程序员宅基地

文章浏览阅读1.4k次。四种引用在Java 1.2 之后,Java地引用的概念进行了补充,以前只有被引用和没有被引用两种状态。扩充之后分为四种,1. 强引用(Strong Reference)2. 软引用(Soft Reference)3. 弱引用(WeakReference)4. 虚引用(Phantom Reference),也称幽灵引用或者幻影引用_java中的四种引用关系由强到弱 site:blog.csdn.net

C++类对象模型之内存布局_类的内存布局-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏8次。1、C++类对象的内存布局 在C++的类对象中,有两种类的成员变量:static和非static,有三种成员函数:static、非static和virtual。那么,它们在C++的内存中是如何分布的呢? C++程序的内存格局通常分为四个区:全局数据区(data area),代码区(code area),栈区(stack ..._类的内存布局

r语言进行go富集分析_R语言-GO富集分析的超几何检验和可视化-程序员宅基地

文章浏览阅读2.8k次。Gene Ontology可分为分子功能(Molecular Function),生物过程(biological process)和细胞组成(cellular component)三个部分。蛋白质或者基因可以通过ID对应或者序列注释的方法找到与之对应的GO号,而GO号可对于到Term,即功能类别或者细胞定位。根据挑选出的差异基因,计算这些差异基因同GO 分类中某(几)个特定的分支的超几何分布关系,..._r语言 go分析

【云服务器】阿里云服务器+宝塔Linux零成本搭建全网音乐搜索引擎网站(在线音乐播放器),可在线播放可下载可分享它不香么?_宝塔搭建一个音乐系统-程序员宅基地

文章浏览阅读1.8k次,点赞2次,收藏7次。 前几天因为博主的个人博客即将到期,因此特意从个人博客搬运出了文章:超详细教程】阿里云+宝塔+Typecho零基础搭建个人博客全套式教程——以免费领取的ECS阿里云服务器为例。然而,昨天因为在阿里云高校计划续费测试中拿到了90分成功续命了之前白嫖的阿里云服务器。因此在今天,博主就来为大家分享一下刚搭建好的音乐播放器的实现步骤与经验总结。目录前期准备实现步骤1.添加站点2.下载GitHub项目到本地3.部署音乐播_宝塔搭建一个音乐系统

基于STM32的web+app的智慧灌溉系统物联网嵌入式软硬件开发单片机毕业源码案例设计-程序员宅基地

文章浏览阅读217次。5.配有基于SpringBoot、Vue、uniapp、Qt的Web端、移动端、PC端,远程控制,远程查看数据。6.云平台具有设备管理、数据管理等完整的功能。4.远程设置光照强度和土壤湿度的阈值。2.湿度太干时自动打开水泵进行浇水。1.实时监测光照强度、土壤湿度。基于STM32的智慧灌溉系统。3.光照太暗时自动开灯补光。5.通信基于MQTT协议。

随便推点

(免费领源码)java#springboot#mysql开放实验室管理系统03361-计算机毕业设计项目选题推荐-程序员宅基地

文章浏览阅读445次,点赞11次,收藏10次。开放实验室管理系统从功能、数据流程、可行性、运行环境进行需求分析。对开放实验室管理系统的数据库、功能进行了详细设计,分析了主要界面设计和相关组件设计,开放实验室管理系统的具体实现进行了介绍。从数据库中获取数据、向数据库中写入数据,实现系统直接对数据库进行各种数据库查询、插入、删除、更新等操作,在网页中加入动态内容,从而实现开放实验室管理系统所需要的各种基本功能。

现代控制理论(4)——李雅普诺夫稳定性理论_李亚普诺夫稳定性-程序员宅基地

文章浏览阅读2.5w次,点赞20次,收藏236次。文章目录_李亚普诺夫稳定性

大电流dcdc降压芯片20a_基于MC34063芯片DC-DC(20-5)降压型变换电路-程序员宅基地

文章浏览阅读1.4k次。目录基于MC34063芯片的DC-DC(20/5)降压型变换电路.................................................................21引言......................................................................................................_dc电源芯片 20a

About Add DataRow-程序员宅基地

文章浏览阅读128次。当从一个表中将记录Copy到另一个结构相同的表中的时候,有两种方式:DataTable.ImportRow()或: DataTable.Rows.Add()正确的使用方法: dt1.ImportRow(dt.Rows[0]);或: dt1.Rows.Add(dt.Rows[0].ItemArray);不要使用:..._add data row

linux中-f的含义,linux 下shell中if的“-e,-d,-f”的含义-程序员宅基地

文章浏览阅读1.5w次,点赞4次,收藏55次。文件表达式-e filename 如果 filename存在,则为真-d filename 如果 filename为目录,则为真-f filename 如果 filename为常规文件,则为真-L filename 如果 filename为符号链接,则为真-r filename 如果 filename可读,则为真-w filename 如果 filename可写,则为真-x filename 如果..._-f

【JS】根据日期和给定的天数,计算日期的前几天或者后几天的日期时间_js计算某个日期多少天后的日期-程序员宅基地

文章浏览阅读301次。【代码】【JS】根据日期和给定的天数,计算日期的前几天或者后几天的日期时间。_js计算某个日期多少天后的日期