问题描述 今天遇到一个git分支切换的问题,我在分支A上做了修改,然后切换到分支B后,发现分支B上也存在着分支A上的修改。...原因 如果当前分支所做的修改没有提交就切换去其他分支的话,那么也会看到相同的修改 解决方法 解决方法有两种: 方法一: 用 git add 和 git commit 提交修改,只要用 git status...(所谓的干净就是指不显示有修改的痕迹,即git status显示没有内容被修改) 方法二: 如果我当前分支上的工作还没做完,不能提交,但又想去其他分支,这时候可以把当前分支的工作现场隐藏起来。...本质:一个本地的git repo只有一个工作区和暂存区,但是有多个分支的提交区,而我们的checkout只是将HEAD指针从一个分支切换到另一个分支。...未经允许不得转载:肥猫博客 » git切换分支(如果当前分支所做的修改没有提交此时如何切换去其他分支)
有时候我们希望找到一个提交历史,然后从这个提交历史中创建一个分支。很多人应该都会使用命令行工具来做,其实 IDEA 已经帮你做了。IDEA首先在 IDEA 中找到 Git,然后找到你的提交历史。...在找到提交历史后,可以选择鼠标的右键。然后选择新分支。你就可以从当前的提交历史中来创建一个新的分支了。Source Tree使用 SourceTree 也是一样的。...通过在提交历史中单击右键,然后选择分支,你就可在当前指定的提交历史中来创建一个新的分支了。https://www.ossez.com/t/git/13981
--list 提交修改的文件 $ git add . $ git commit -m '提交信息' 删除不需要提交的文件 $ git rm 文件xx 给文件移动/重命名 $ git mv oldfilename...$ git log -p filename 回退还未提交的修改 回退全部未提交的修改: $ git checkout ....回退指定文件还未提交的修改: $ git checkout -- filename 不再追踪时如何实现撤销追踪操作(从暂存区 回到到本地仓库) $ git reset HEAD filename 版本回退...文件的版本回退 $ git checkout commitId -- filename 推送远程仓库 $ git push origin master 创建标签及标签管理 创建标签会默认添加到最近一次的...dev 分支的排序按字母排序 删除分支不能删除当前所在分支 没合并的分支不能删除,除非将 -d 换成 -D 进行强制删除 创建分支并直接切换到创建的分支上,如下会创建xxx分支并直接切换到xxx分支上
更新远程服务器分支列表 # 假如别人删除了一些远程分支,我本地git branch -r/a 的时候,会看到删除之前的所有分支 git remote update origin --prune 2.3....提交记录查看 git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者、提交日期、和提交说明 如果记录过多,则按Page Up、Page Down、↓、↑来控制显示...按q退出历史记录列表 git log [] [.....-s # 返回每个作者的贡献次数 git shortlog -sn # 返回每个作者的贡献次数按从多到少排序 git shortlog -sne # 返回每个作者的贡献次数带邮箱按从多到少排序...# n:按照 commit 数量从多到少的顺利对用户进行排序。
git diff --name-only ORIG_HEAD 获取变更列表 git log -p 查看每个提交引入的实际更改。...git log --oneline --decorate 查看日志列表 git diff 每次提交时显示差异变化 git diff --stat 每次提交时显示差异变化列表 git log -p...查看每个提交引入的实际更改。...git shortlog 按作者对每个提交进行分组,并显示每个提交消息的第一行。按作者名称排序输出。 git shortlog -n 按每位作者的提交次数排序分组输出。...绘制表示提交历史记录的分支结构的ASCII图 git log --graph --oneline --decorate 自定义格式 git log --pretty=format:"%cn committed
push git pull git log git tag 接下来,将通过对 我的博客 仓库进行实例操作,讲解如何使用 Git 拉取代码到提交代码的整个流程。...提交记录可能会非常多,按 J 键往下翻,按 K 键往上翻,按 Q 键退出查看 git tag “为项目标记里程碑 git tag publish/0.0.1 git push origin publish...git branch -r 查看远程版本库上的分支列表,加上 -d 参数可以删除远程版本库上的分支 git branch -D 分支未提交到本地版本库前强制删除分支 git branch -vv...查看带有最后提交id、最近提交原因等信息的本地版本库分支列表 git merge “将其它分支合并到当前分支 git merge --squash 将待合并分支上的 commit 合并成一个新的...如果移动提交记录的顺序,将改变历史记录中的排序。
diff.txt 文件中(追加到 diff.txt 文件内容) git diff branchA >> diff.txt 分支 前仓库中存在的所有分支列表 git branch 查看远程分支 git...git diff master..test 当前工作目录和上次提交与本地索引之间的差异 git diff 当前分支与其他分支的不同 git diff test 查看工作区和版本库里面最新版本的区别:...log --graph 显示所有提交过的用户,按提交次数排序 git shortlog -sn 显示指定文件是什么人在什么时间修改过 git blame file 显示今天你写了多少行代码 git diff...diff 输出暂存区和本地最近的版本 (commit) 的 different (不同) git diff --cached 输出工作区、暂存区 和本地最近的版本...fork的项目如何同步仓库源的最新更新 //查看项目远程仓库配置,如果没有源的地址则新增 git remote -v //添加源项目地址 git remote add tata(随便一个名称) url(
提交记录可能会非常多,按 J 键往下翻,按 K 键往上翻,按 Q 键退出查看 git tag 为项目标记里程碑 git tag publish/0.0.1 git push origin publish...git branch -r 查看远程版本库上的分支列表,加上 -d 参数可以删除远程版本库上的分支 git branch -D 分支未提交到本地版本库前强制删除分支 git branch -vv 查看带有最后提交...id、最近提交原因等信息的本地版本库分支列表 ?...-10 显示最近10条历史记录 git log f5f630a..HEAD 显示从提交ID f5f630a 到 HEAD 之间的记录,HEAD 可以为空或其它提交ID git log --pretty...如果移动提交记录的顺序,将改变历史记录中的排序。
提交记录可能会非常多,按 J 键往下翻,按 K 键往上翻,按 Q 键退出查看 git tag 为项目标记里程碑 git tag publish/0.0.1 git push origin publish...git branch -r 查看远程版本库上的分支列表,加上 -d 参数可以删除远程版本库上的分支 git branch -D 分支未提交到本地版本库前强制删除分支 git branch -vv...查看带有最后提交id、最近提交原因等信息的本地版本库分支列表 ?...-10 显示最近10条历史记录 git log f5f630a..HEAD 显示从提交ID f5f630a 到 HEAD 之间的记录,HEAD 可以为空或其它提交ID git log --pretty...如果移动提交记录的顺序,将改变历史记录中的排序。
- master分支:初始化出来的分支。git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。 - HEAD指针:master的指针。...二、常见命令 1.git init 在文件目录下执行命令,会将文件夹设置为git仓库,并生成一个.git文件,用于保存本地的提交信息等。 2.git add xxx 将文件xxx加入到修改列表中。...时:查看工作目录同最近一次 commit 的内容的差异):git diff 3.比较暂存区与最新本地版本库(本地库中最近一次commit的内容):git diff...(这里版本指commit后的状态):git diff 6.git log (--pretty=oneline) 命令显示从最近到最远的“提交”日志。...27.git tag 查看所有标签,按名称来排序的 28.git show 查看该次标签的具体信息 29.git tag -d 删除某个本地标签。
–all 按日期排序显示历史 gitk –date-order Q&A 如何解决gitk中文乱码,git ls-files 中文文件名乱码问题?...git stash git pull git stash pop stash 查看 stash 列表: git stash list 查看某一次 stash 的改动文件列表(不传最后一个参数默认显示最近一次...也可以运行 git mergetool -t vimdiff 使用 -t 参数临时指定一个想要使用的 merge tool。 不想跟踪的文件已经被提交了,如何不再跟踪而保留本地文件?...或 git pull --unshallow 基于某次 commit 创建分支 git checkout -b test 5234ab 表示以 commit hash 为 5234ab 的代码为基础创建分支...git show 查看某个文件的修改历史 git log -p 查看最近两次的修改内容 git log -p -2 应用已存在的某次更改 / merge
工作区:对项目的某个版本独立提取出来的内容。 暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。...oneline # 显示所有提交过的用户,按提交次数排序 $ git shortlog -sn # 显示指定文件是什么人在什么时间修改过 $ git blame [file] # 显示暂存区和工作区的差异...] # 显示当前分支的最近几次提交 $ git reflog 八、远程同步 # 克隆远程仓库 $ git clone [url] # 下载远程仓库的所有变动 $ git fetch [remote]...push [remote] --all # 更新远程分支列表 $ git remote update [remote] --prune $ git remote update [remote] -p...:常用 Git 命令清单 【2】:《progit_v2.1.28》 【3】:git 拉取远程分支到本地 【4】:git 更新远程分支列表
在使用 git 进行版本管理的开发过程中,经常遇到上传或者拉取分支的时候冲突,在遇到冲突的时候,经常使用下面两个方式解决,虽然第一个方案看起来比较复杂,但是如果按我之前的文章: Git 工作流 进行工作的话...git pull : 同步远程分支,发现当前的开发流有了新的提交,且与自己开发的功能有冲突。 git checkout -b feature : Checkout 到 feature 分支。...暂存提交方案 在修改的时候,忘记新建对应的分支了,可以按上面的方案,但保存,然后创建新的分支,再将远程分支对应分支的内容 reset 回未修改的状态。或者使用 git stash 系列命令解决冲突。...stash pop : 应用的同时从列表中移除,只能操作最近的一次 stash 的内容 git stash list : 查看整个的暂存列表 git stash save : 来查看对应的所有的修改...,这样就可以非常方便的找到最好的实现方案 git stash show -p stash@{1} : 不输入对应的 stash@{} 内容则将最近的 stash 与当前分支做比较,如果加了则用指定的暂存
提交消息的书写规范冲突何时发生:1、使用pull命令2、合并分支如何解决:对冲突部分的代码进行预览,择取要留下来的代码。...Learn Git游戏Branch分支就是git的精髓,要 早建分支、多用分支原因:因为即使创建再多的分支,不会造成 储存或内存上 的开销按逻辑分解工作到不同的分支,要比维护那些特别臃肿的分支简单多了。...修改的代码不同,最后我只想取C4的提交 和 主分支 合并说明了:某次提交,只记录 当次修改的代码技巧1 reabse倒序技巧2 cherry-pick优化rebase使用rebase颠倒顺序的问题:但这样做就唯一的问题就是要进行两次排序...Describe效果:用来描述离你最近的锚点(也就是标签)语法:git describe 可以是任何能被 Git 识别成提交记录的引用,如果你没有指定的话,Git 会以你目前所检出的位置...main最近的提交。
,我也会努力将其优化的更加的符合工作场景 说明 1、在[…]中的内容,需要根据实际情况进行修改 如何本地与远程建立信任联系?...: -p 选项展开显示每次提交的内容差异,用 -2 则仅显示最近的两次更新 例如:git log -p -2 –name-only 仅在提交信息后显示已修改的文件清单 –name-status...作者修订日期,按多久以前的方式显示 %cn 提交者(committer)的名字 %ce 提交者的电子邮件地址 %cd 提交日期... %cr 提交日期,按多久以前的方式显示 %s 提交说明 –since 限制显示输出的范围, 例如: git log –since=2....weeks 显示最近两周的提交 选项 说明 -(n) 仅显示最近的 n 条提交 –since, –after 仅显示指定时间之后的提交。
最近有小伙伴问我 git 应该怎么学,我觉得 git 就是多用就会了,把常用的命令先看两边,然后再在实际过程中运用,忘了再去查一查,用多了就记住了,当然这只是代码管理,要达到真正的版本管理,还需要一些规范...比如提交代码的规范,各个版本之间怎么管理,分支怎么管理等等,我尽量在下一篇文章中分享。 今天文章就先把一些常用的命令进行介绍,看看自己有哪些还没用过的,记下来,说不定遇到这种事儿就会用了。...删除远程分支:git push origin -d 分支重命名:git branch (-m | -M) 查看提交信息日志 查看分支最近一次的修改列表:git status 查看分支的commit...信息(倒叙排列) git log 查看commit id, Author, Date, commit info git shortlog 按提交者分类显示提交信息 git log --oneline 只输出...] 推送到远程:git push origin 比对两个分支:git diff 比对两个分支变更的文件列表:git diff --stat 比对本地和远程分支:git diff origin/ 合并某个分支
untracked:未跟踪,表示文件不受git管理,一般新建的文件处于该状态 Untracked files staged:已暂存,表示对以修改的文件做了标记,使之包含在下次要提交的文件列表中...1月1号的记录) git log --author="name" 查看某个人的提交记录 git log -n 显示前n条记录 git shortlog -sn 显示所有提交过的用户,按提交次数排序 git...显示当前分支的最近几次提交 A:本地新增的文件(服务器上没有) C:文件的一个新拷贝 D:本地删除的文件(服务器上还在) M:红色为修改过未被添加进暂存区的,绿色为已经添加进暂存区的 R:文件名被修改...1月1号的记录) git log --author="name" 查看某个人的提交记录 git log -n 显示前n条记录 git shortlog -sn 显示所有提交过的用户,按提交次数排序 git...显示当前分支的最近几次提交 8、远程同步 命令 功能介绍 git fetch [remote] 下载远程仓库的所有变动 git remote -v 显示所有远程仓库 git remote show [
Git是一个开源的分布式版本控制系统,也是目前用的最多的版本控制系统。因此在平时的开发过程中也难免会遇到代码提交的问题,通过命令分析很不方便,这里介绍一个排查Git问题的工具gitk。...miscellaneous options:其他选项,比如:按时间排序,标记分支侧,限制只显示第一个parent,简单历史显示。还可以使用其他 git log参数。...,如2.0.0-beta2③ 黄色标志着当前的HEAD,如最顶上的HEAD④ 黄色方块标记有“注释”的提交(git-notes)(无) 3、右键菜单 可以根据分支和commit显示不同的菜单,完成不同的操作...④Child:当前节点的孩子节点,当从该节点新建不同分支时,会有多个Child,此处为超链,可跳转到相应的节点。 ⑤Branches:当前节点最近的HEAD分支,当前签出的分支可跳转。...⑥Follows:当前节点最近的上一个Tag。 ⑦Precedes:当前节点最近的下一个Tag,有可能是计划Tag。 ⑧Tag:当前为tag时会显示标签信息。
领取专属 10元无门槛券
手把手带您无忧上云