首页 > 其他分享 >git随笔

git随笔

时间:2022-10-23 20:14:26浏览次数:39  
标签:git -- stash 暂存区 file commit 随笔

  • 概念
    • 工作区
    • 暂存区
    • 已提交
    • 工作流程: 1. 修改工作区(增加或者删除)2.暂存工作区的修改 3. 提交暂存区
git init
git add [ <file> | <path> | . ]
git commit -m '111'
git commit  -am 'commit message'
 # 等效于 git add . 然后 git commit -m 'commit message'
git log

git rm --cached <file>

git rm <file> 等价于 rm <file>, git add <file>
就是说,git rm的作用:先将<file>从工作区中删除,然后暂存修改


git reset HEAD <file> #将file从暂存区移除

# git重命名操作:实际上是先copy一个内容一样的新文件,然后删掉旧文件。
# 所以注意git add需要暂存两个文件的修改(一个修改是增加新文件,另一个修改是删除旧文件)
git mv <file1> <file2> 等效于 mv <file1> <file2>, git add <file1> <file2>

git branch [new_branch]
git branch -d <branch> # 删除分支
git branch -m <branch_old_name> <branch_new_name> #分支重命名

git checkout <branch>
git checkout -b <new_branch>
git checkout -- <file> #将file的工作区的修改丢弃掉, 将它还原成上次提交时的样子`

git merge <other_branch>

git reset --hard [<commit_id> | HEAD^^ | HEAD~2] #重置为上一次提交的上一次提交

git stash
git stash list
git stash save 'save_message'
git stash pop # 恢复保存的内容同时删除stash
git stash apply #恢复保存的内容但是不删除stash
git stash apply stash@{0}
git stash drop stash@{0}

git diff # 默认比较暂存区和工作区

git diff commit_id # 比较commit_id和工作区
git diff HEAD #比较最新提交和工作区

git diff --cached(--staged) commit_id #比较commit_id和暂存区
git diff --cached # 比较最新提交和暂存区

git add

这是个多功能命令:可以用它开始跟踪新文件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态等。

git checkout -- <file> #将file的工作区的修改丢弃掉, 将它还原成上次提交时(如果已经暂存则还原成上次暂存时!!)的样子

你需要知道 git checkout -- [file] 是一个危险的命令,这很重要。 你对那个文件做的任何修改都会消失
你只是拷贝了另一个文件来覆盖它。 除非你确实清楚不想要那个文件了,否则不要使用这个命令。

git reset HEAD <file> #将file从暂存区移除

从表现来看,这个命令只是将file从暂存区移除,使得该文件处于unstaged状态,但是不会对工作区的file的内容产生影响

分支

标签:git,--,stash,暂存区,file,commit,随笔
From: https://www.cnblogs.com/jujubos/p/16709540.html

相关文章

  • Git篇—1.git基本使用
    createanewrepositoryonthecommandlineecho"#makePlugin-demo">>README.mdgitinitgitaddREADME.mdgitcommit-m"firstcommit"gitbranch-Mmastergitr......
  • GIT命令部分解释
    gitclone+"地址"下载项目地址 npmi补全下载项目的所有插件 gitstatus查看状态状态详解红色修改了工作区代码,还没add绿色修改了工作区代码,已经......
  • Git权威指南学习笔记(1)
    图书馆白嫖系列前情提要:2005.4.3 Linus开始开发git2005.4.6 项目发布2005.4.7 git可以作为自身版本控制工具了2005.4.29性能达到预期2005.6.16可以维护Linux......
  • Git修改最近一次提交的日志信息
    一、问题由来当前自己所在的项目组中,每次发完一个版本后,就需要创建个人新版本的git提交凭证,其实就是系统自动生成的一串编码,如果没有这个凭证,代码是提交不了的,这是公......
  • Linux安装GitLab及简单使用
    目录1.下载2.安装3.修改IP端口4.重置gitlab5.gitlab启动6.设置密码7.idea从GitLab上拉取项目为创建项目8.使用1.Fetch2.分支1有修改未提交,切换分支23.Merge4.C......
  • git fetch&pull讲解 | Git
    概括先用一张图来理一下gitfetch和gitpull的概念:可以简单的概括为:gitfetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。而git......
  • git工具使用
    第四章 Asible最佳实践-进阶版-RHCA447-(git代码托管平台)说明:基础代码架构:无需动手管理基础架构;自动化代码来定义和构建系统;如果anisble是用来定义这种基础架构的代......
  • 2022年10月22日随笔
    2小时前:后藤一里很对我的xp现在:我是喜多郁代的狗我是喜多郁代的狗我是喜多郁代的狗我是喜多郁代的狗我是喜多郁代的狗我是喜多郁代的狗我是喜多郁代的狗我是喜多郁代的狗......
  • GitHub Pages 和 Jekyll 笔记
    GitHubPages和Jekyll笔记快速创建(使用默认的Jekyll引擎)1.新建仓库新建一个空仓库,名称为username.github.io,其中username就是你的GitHub账号名称2.增加文......
  • Visual Studio (VS2017)提交代码到Git服务器流程(GitCode)
    一、前言Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。有了Git之后团队协作,版本控制都非常方便。场景:(1)版本管理。Git提供了版本......