在IntelliJ中将git远程分支恢复为以前的提交,可以按照以下步骤操作:
这样,你的远程分支就会被恢复到以前的提交状态。
请注意,这个操作是不可逆的,会丢失当前分支的所有未提交的更改。因此,在执行此操作之前,请确保你已经备份了重要的更改或创建了新的分支来保存当前状态。
关于IntelliJ的更多操作和功能,你可以参考腾讯云的产品 IntelliJ IDEA 的介绍页面:IntelliJ IDEA。
Git是一个分布式版本控制系统,可以帮助开发人员在任何规模的项目上进行协作。Linux内核的开发人员Linus Torvalds在2005年创建了Git,以帮助控制Linux内核的开发。
master 分支 不能往master 分支上提交代码,只能在该分支上进行代码合并操作,例如将其它分支的代码合并到 Master 分支上。 develop 分支 我们日常开发中的代码需要从 master 分支拉一条 develop 分支出来,该分支所有人都能访问,但一般情况下,我们也不会直接在该分支上提交代码,代码同样是从其它分支合并到 develop 分支上去。 feature 分支 当我们需要开发某个特性时,需要从 develop 分支拉出一条 feature 分支,例如 feature/update_mq 与 feature/update_netty,在这些分支上并行地开发具体特性。 release 分支 当特性开发完毕后,我们决定需要发布某个版本了,此时需要从 develop 分支上拉出一条 release 分支,例如 release-1.0.0,并将需要发布的特性从相关 feature 分支一同合并到 release 分支上,随后将针对 release 分支推送到测试环境,测试工程师在该分支上做功能测试,开发工程师在该分支上修改 bug。待测试工程师无法找到任何 bug 时,我们可将该 release 分支部署到预发环境,再次验证以后,均无任何 bug,此时可将 release 分支部署到生产环境。 tag 待上线完成后,将 release 分支上的代码同时合并到 develop 分支与 master 分支,并在 master 分支上打一个 tag,例如 v1.0.0。 hotfix 当生产环境发现 bug 时,我们需要从对应的 tag 上(例如 v1.0.0)拉出一条 hotfix 分支(例如 hotfix-1.0.1),并在该分支上做 bug 修复。待 bug 完全修复后,需将 hotfix 分支上的代码同时合并到 develop 分支与 master 分支。同时在master上打上tag,v1.0.1。 版本号 对于版本号我们也有要求,格式为:x.y.z,其中,x 用于有重大重构时才会升级,y 用于有新的特性发布时才会升级,z 用于修改了某个 bug 后才会升级。 个人分支 个人分支下可以建目录,例如: xiaoguai/dev1, xiaoguai/dev2
对于刚刚加入职场的新人来说,被分配到的第一个任务往往都是:从远程仓库把代码拉下来,并熟悉代码吧。如果你以前从来没有接触过Git,那么拉取代码都会有相当大的困难,因为你并不理解怎么拉代码。如果你以前接触过Git,并在学校使用过Git来进行代码的版本控制的话,那么你应该对Git有个基本的认识,至少会拉取代码,添加索引,推送代码到远程仓库等基本操作。其实大家在学习过程中都有一些基本的版本控制思想,那就是在写论文的时候,常常会保存多份文档,分别手动在文件的命名上进行版本控制,如下图所示:
在我们日常工作生活中,当我们换设备或者重装系统后,往往需要将我们之前的代码进行同步。这个时候我们常常都是采用 U 盘拷贝的方式,但是这样十分麻烦,那有没有不用通过 U 盘之类的介质拷贝就能实现的呢。今天我们看看如何利用 IDEA + Github,实现跨设备跨平台之间的同步。后续步骤均建立在安装好 git 和拥有 Github 账户的基础上,如果还没有安装 git 或者没有 Github 账户,那赶紧先去安装 git 和申请一个 Github 账户吧。
在发布版本的时候,可以在版本库中打一个标签,这样就唯一确定了打标签时刻的版本。在需要的时候可取某个标签的版本。标签相当于是版本库的一个快照,可以自定义标签名字,便于查找
从本质上来讲 Git 是一个内容寻址(content-addressable)文件系统,并在此之上提供了一个版本控制系统的用户界面。
如果你的机器上没有安装Git,可以查看这篇文章 How to Install Git on Mac and Generate SSH Keys.
git 是分布式的,所以其核心就是分支,分支的意义在于,可以将项目代码按照功能、模块拆分成不同的分支。比如这个产品要加一个支付功能和一个登陆功能,可以创建两个分支,交给不同的开发人员并行开发。登陆功能先开发完,测试无误后合并改分支到 master 分支,master 分支部署上线。支付功能虽然没有开发完成,但是在另一条分支上,所以产品上线和功能开发完全不受影响。这才是分布式开发的高效模式。 在 git 中,工作目录下面的所有文件都不外乎这两种状态:已跟踪或未跟踪。已跟踪的文件是指本来就被纳入版本控制管理的文件,在上次快照中有它们的记录,工作一段时间后,它们的状态可能是未更新,已修改或者已放入暂存区。而所有其他文件都属于未跟踪文件。它们既没有上次更新时的快照,也不在当前的暂存区域。初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改。
推荐一个 git 图形化教学网站:Learn Git Branching,这个网站有一个沙盒可以直接在上面模拟 git 的各种操作,操作效果使用图形的方式展示,非常直观。本文可以看作是它的文字版,将其中各级关卡所要学习的概念和命令提取出来,方便查阅。文中的一些示例,如果没有显而易见的输出,就需要读者在沙盒中亲自输入来查看效果。
AppCode、CLion、Datalore、DataGrip、GoLand、IntelliJ IDEA、PhpStorm、PyCharm、Rider、RubyMine、WebStorm 等 JetBrains 的 IDEs
Git 作为一种分布式版本控制系统已经成为现在开发的宠儿,不仅应用在前端、后端、客户端等开发场景中,也成为各行业互联网企业分工协作的必备技能之一。
本文转载自:https://segmentfault.com/a/1190000004963641[1]
在 2005 年的某一天,Linux 之父 Linus Torvalds 发布了他的又一个里程碑作品——Git。它的出现改变了软件开发流程,大大地提高了开发流畅度!直到现在仍十分流行,完全没有衰退的迹象。
「使用场景:」 当你接到一个修复紧急 bug 的任务时候,一般都是先创建一个新的 bug 分支来修复它,然后合并,最后删除。但是,如果当前你正在开发功能中,短时间还无法完成,无法直接提交到仓库,这时候可以先把当前工作区的内容 git stash 一下,然后去修复 bug,修复后,再 git stash pop,恢复之前的工作内容。
后面会把前端进阶的课程内容都总结一遍。有些都是很常见的知识,但是为了梳理自己的知识树,所以尽量模糊的地方都会记录
继上一次后,抽空整理了个比较全的Git常用命令,找到了一张非常棒的导图,非常高清的(1759*3162)。
git rm <file> --cached # 从版本库中删除文件,但不删除文件
1.在工作目录中添加、修改文件; 2.将需要进行版本管理的文件放入暂存区域 3.将暂存区域的文件提交到版本仓库
下面是自己学习使用git的常用的命令,还有些使用过程中碰到问题的解决办法,现整理如下。
Git配置 git config --global user.name "robbin" git config --global user.email "fankai@gmail.com" git config --global color.ui true git config --global alias.co checkout git config --global alias.ci commit git config --global alias.st status git config --
Git配置 git config --global user.name "xx" git config --global user.email "xx@gmail.com" git config --global color.ui true git config --global alias.co checkout git config --global alias.ci commit git config --global alias.st status git config --global alias.br branch git config --global core.editor "mate -w" # 设置Editor使用textmate git config -l # 列举所有配置
https://blog.csdn.net/litongqiang/article/details/107388918 https://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html
git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息 git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可 git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容 以下是一些reset的示例: #回退所有内容到上一个版本(HEAD回退add的版本):git reset HEAD^ #回退a.py这个文件的版本到上一个版本:git reset HEAD^ a.py #向前回退到第3个版本:git reset –soft HEAD~3 #将本地的状态回退到和远程的一样 :git reset –hard origin/master #回退到某个版本(–hard回退commit的版本) ,使用git log查询提交日志
merge 分支合并有 fast-forward 和 no-fast-forward 两种模式。下图 dev 合入 master,默认触发快进模式(fast-forward),因为只需要修改指针即可实现合并;而普通模式(no-fast-forward)需要生成一个新的commit,因此即使 dev 分支删除,也能从 master 分支历史上看出分支合并信息。
在版本库中标记为index的区域为暂存区,标记为master的是Git为我们自动创建的第一个分支,代表的是目录树。此时HEAD实际是指向master分支的一个“游标”,所以图示的命令中出现HEAD的地方可以用master来替换。图中的objects标识的区域为git的对象库,实际位于.git/objects目录下。
最近用Git比较多,所以大概整理下 Git是目前世界上最先进的分布式版本控制系统。
一. 查看远程分支 git branch 或者 git branch -r
前言:GIT对于我们程序员来说是吃饭的工具,本篇主要是针对提交和分支以及对于大多数程序员闻风丧胆的冲突一些个人见解,如果有啥不对的或者你们公司git提交流程欢迎下方评论。
我们在日常使用Git的过程中经常会发生一些意外情况,如果处理不当,则可能会出现代码丢失的假象。本文将针对IDEA&Git日常开发中的一些场景,为你层层拨开迷雾,解析常见的错误及其发生原因,让你从此不再惧怕代码冲突或丢失问题。
使用 Git 作为代码版本管理,早已是现在开发工程师必备的技能。可大多数工程师还是只会最基本的保存、拉取、推送,遇到一些commit管理的问题就束手无策,或者用一些不优雅的方式解决。
Git的设置文件为.gitconfig,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。
Git常用命令 代码仓库 创建仓库 1、进入需要创建代码库的文件夹 cd 文件路径 2、创建/初始化仓库 git init 3、拉取远程仓库到本地 git clone 建议使用git clone 添加文件到仓库 1、添加文件到暂存区 添加单个文件 git add 添加所有文件 git add . 会忽略的文件 .gitignore中指定的文件会被忽略 空目录 2、提交到本地仓库 git commit 填写commit message 保存
整理一下经常忘记的Git命令 (版本v2) http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html?utm_source=tool.lu
然后使用File --> Settings --> Version Control --> Git配置客户端安装目录
除此之外,还可以下载《progit》——这是最棒的Git学习资料,而且有中文版本。
使用Git Bash上传文件及更新代码到GitHub教程,其实对于一个github来说已经给出了比较好的说明了。
合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
版本库是Git中最重要的概念之一,它是存储代码修改历史的地方。一个版本库可以包含多个文件和目录,并且记录了每个文件的每次修改。通过版本库,你可以查看、比较和恢复代码的各个版本。
分支分为两种,一种是本地已经存在的,还有一种是服务器上有, 但本地不存在的分支,查看的方式稍有区别。
默认打开的地址是应该是用户目录,也就是c盘Users下某个地方,下面就先在固定的地址新建一个空的目录作为我们的新项目,叫做FastApiProject:
git checkout -b 本地分支名 origin/远程分支名 使用上面的命令可以创建分支名并且关联到远程的分支,但是远程分支存在git push多次,发现关联分支的本地代码不是最新的,只需要在git pull 后面添加origin master 就能获取最新代码。
git 的设置文件为 .gitconfig ,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)
命令不断更新中...... Git的四个组成部分 75062926.png 1、初始化仓库 git init 2、将文件添加到仓库 git add 文件名 # 将工作区的某个文件添加到暂存区
命令不断更新中…… Git的四个组成部分 img 1、初始化仓库 git init 2、将文件添加到仓库 git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添
来源:https://www.jianshu.com/p/5ee9897b6b65
在你日常的开发中,会遇到很多Git的操作,但你从来没做过,这篇文章便是一本Git命令速查手册,里面总结了我工作这几年来最最常用的Git用法。相信对日常开发来说是有帮助的。
领取专属 10元无门槛券
手把手带您无忧上云