git笔记

git常见命令

git init :初始化本地仓库,会生成一个.git文件,该文件用于管理和追踪该本地仓库,只有在git仓库下的文件才能被管理!

git config user. name "用户名"

git config user. email " 邮箱"

git config -1 :列出当前git仓库的所有配置项

git config --unset ... 重置 当前 某些配置

git config --global ...全局配置项

利用git config --global ...全局配置的项目不能直接用git config --unset重置掉,需要加上--global

git cat-file -p gitid:查看对应gitid的新增内容

git diff file:查看暂存区和工作区的差异

git diff --file:查看版本库与工作区的差异

git status:查看工作区和暂存区的状态

git reset --[soft|mixed|hard] gitid:回退到指定gitid的文档

--soft:只有版本库会回退;

--mixed:只有版本库和暂存区都会回退;(默认)

--hard:版本库、暂存区、工作区的内容都会回退;

git checkout -- file name :撤销工作区中的代码,回退到最近一次commit或add时的版本

git reset HEAD filenmae:撤销暂存区中的文件,filename换为" . "表示撤销暂存区中的所有文件

git branch : 查看已存在的分支

git branch name:创建分支

git checkout 分支名称:切换分支

git checkout -b name:切换分支,分支不存在,就先创建在切换

git merge 分支名称:合并分支

工作区的不干净之前,不允许合并和切换到其它分支,需要暂存或者提交当前分支上的内容才能进行merge和checkout

git branch -d 分支名称:删除分支(需要在不同的分支进行删除)

git branch -D name:强制删除分支,用于在分支上进行了开发,单还为merge的分支

分支指针指向的版本即为当前分支的最新版本

git clone url;克隆远程仓库到本地

git clone 命令会将远程仓库的标签信息和分支信息都拷贝下来,但是只会拷贝远程仓库默认分支的历史版本,而一般情况下远程仓库的默认分支就是master分支,因此git clone实际上就只会将master分支上的历史版本拷贝下来,不会讲其它分支的历史版本拷贝下来

git remote -v 查看当前本地仓库与远程仓库的关联信息

git push <远程仓库名> <本地分支>:<远端分支>;推送版本;

git pull <远程仓库名> <远程分支>:<本地分支>;拉取版本x

git push <远程仓库名> //推送本地name分支到远端name分支,如果远端name分支不存在则创建之;

pull:会将远程仓库的标签和分支信息拉取下来,也会将指定拉取的远程分支的最新版本拉取下来

直接是用git push和git pull的情况:

实际上是当前工作分支与远程某个分支建立的联系,eg:

本地local_dev分支与远程仓库的dev分支建了联系,因此当我们是用git push和git pull的时候实际上是从远程dev分支上拉取数据到本地的local_dev分支

如果在push的时候出现失败了,那么说明在本次push之前,已经由用户想该远程分支push过代码了,我们需要将远程分支的代码pull拉取下来与我们本地分支上的代码进行合并,合并如果发生冲突,则解决冲突,没冲突就提交到本地分支,然后再重新push到远程分支

解决:

1、在push之前,先重新pull一下代码

2、如果pull的时候出现了合并冲突,解决合并冲突,重新提交,重新推送

git check--ignore -v filename;查看特定文件被忽略的原因

git config alias.别名 命令;给git命令取别名,如果想让别名在全局生效,那么加上--global

git tag name;为最近一次提交打标签(不带描述信息)

git tag name commitId;为指定一次提交打标签

git tag -a name -m "mes";//为最近一次提交打一个带有描述信息的标签,-a表示:创建一个带有描述信息的标签;-m 后面跟的描述信息

git tag -a name commitID -m "mes";为指定一次提交打一个带有描述信息的标签

git show tagNme;//展示指定标签的详细信息

git tag -d name;//删除指定标签

git push ;//将指定标签推送到指定远程仓库

git push --tags;//将所有标签推送到远程仓库

删除远程标签:

  1. git tag -d tagName;//先删除本地
  2. git push :refs/tags/tagName;//删除远程标签or git push origin --delete tagName

git remote show origin;//查看远程仓库的分支情况

git remote prune origin ;//删除远端分支记录

git branch --set-upstream-to=origin/远端分支 本地分支;//本地分支与远端分支建立联系

git push origin --delete branchName;//本地删除远程分支

分支记录

git branch --set-upstream-to=origin/远端分支 本地分支;//本地分支与远端分支建立联系

git push origin --delete branchName;//本地删除远程分支

相关推荐
这可就有点麻烦了14 分钟前
强化学习笔记之【TD3算法】
linux·笔记·算法·机器学习
bubble小拾39 分钟前
ElasticSearch高级功能详解与读写性能调优
大数据·elasticsearch·搜索引擎
不能放弃治疗1 小时前
重生之我们在ES顶端相遇第 18 章 - Script 使用(进阶)
elasticsearch
Ljubim.te2 小时前
软件设计师——数据结构
数据结构·笔记
hengzhepa2 小时前
ElasticSearch备考 -- Search across cluster
学习·elasticsearch·搜索引擎·全文检索·es
speop4 小时前
【笔记】I/O总结王道强化视频笔记
笔记·音视频
Elastic 中国社区官方博客4 小时前
Elasticsearch:使用 LLM 实现传统搜索自动化
大数据·人工智能·elasticsearch·搜索引擎·ai·自动化·全文检索
yngsqq4 小时前
031集——文本文件按空格分行——C#学习笔记
笔记·学习·c#
int WINGsssss4 小时前
Git使用
git
慕雪华年5 小时前
【WSL】wsl中ubuntu无法通过useradd添加用户
linux·ubuntu·elasticsearch