不管是学生时期,亦或者工作了,有时候免不了需要写一些文档,例如你交一份报告给你的指导老师, 最终通过的报告,总是在不断沟通与修改中完成的,例如 V1、V3、V5 是传给老师的版本,老师标注错误后会回退给我一个偶数的版本...(长得就和 cmd 差不多) Git GUI:图形界面的Git,不建议入门学习使用,学习还是以学习命令为主,在考虑图形界面 说明一下:使用 git 会涉及到一些常见的 Linux 命令,不过因为使用者是基于像...Staged:暂存状态,但还没有真正入库 执行 git commit 命令后,会把你修改的内容,和本地仓库中进行同步,同步后,这时本地仓库中的文件和本地文件又变为一致, 文件就会变成 Unmodify...,执行:git pull 9、提交上去:$ git push -u -f origin master 注意:-f 是强制提交,因为可能咱们第一次拉取过后会出现 项目没有刚才拉取到的新的错误,以后不加...v1.0:$ git checkout -b v1.0 origin/master 并且默认使用它 2、将分支推到远程仓库:$ git push origin HEAD -u 这样我们的远程仓库中就会多出一个分支
---- 二、概览 所有命令前都要加 git,如表中的init是指 git init。 点击命令可直接跳转至本文第一次使用的地方。 以下命令都在命令行里执行。...但是我并不打算把所有命令都介绍一遍,所以我选择使用上面概览时所提到的 git add -A 命令。 ? image 嗯,什么提示都没有。没关系,我们再次使用 git status : ?...现在看看如何用命令删除新加的文件。 首先我手动创建个文件,用来演示: ? image 用checkout是没办法删除掉它的,使用 git clean -xf : ?...你需要先执行 git pull origin master。 执行 git push -u origin master 将本地仓库上传至Github的仓库并进行关联: ?...省去了上面的 init 和 git remote add origin 以及 git push -u origin master 。
网上资料很多,但是不一定适合自己,只好把用到概率大的命令统统详细记一遍,免得以后不时之需,也方便我复习,舒服~ 本来只打算记录10条命令,学着学着发现其他命令也挺重要,然后就逐渐增加到 16 条命令,写了我...-u origin master:master 为本地分支 指定推送的默认主机 和 远程分支 因为一般情况下,我们推送的时候,我们不可能写很长的命令 git push origin master:master...Tip 在 Git2.0之前,我们可以不用设置默认主机和远程分支,就可以直接使用 git push 但是在 Git2.0 之后,Git 修改了他们的默认 push 规则,把 push 的默认规则改成了...1 --- git status 如下,显示暂存区中修改(已经 add),工作区中修改(之前add 过,修改后没有add),工作区中没有追踪的文件 ?...3 --- git stash -u 上面临时保存的文件只包括已经追踪过的文件,新添加没有追踪过的文件是被排除在外的 不过加上 参数 -u 就可以解决 4 --- git stash list 查看
本章主要教大家如何注册并使用git,我选择用命令行拆解步骤,这是为了方便大家理解底层交互。...将工作区的修改提交到暂存盘 git commit -m “简述” 将暂存盘里的更改提交到本地仓库 此时你git push 是推送不了的,会报如下信息: 它说:你还未跟踪远程地址,请执行以下命令设置默认跟踪地址...因为remote 可以配置多个远程仓库,即一个项目指向多个仓库 它不知道你要将更改推送到哪一个仓库,需要你告诉他 git push -u origin master push 推送 -u 设为默认仓库...git pull origin master 拉取指定仓库,指定分支上的代码 如果git push -u 配置过默认推送地址 可以直接使用git pull git status 查看工作区状态...推荐阅读 Git 基础命令与事件详解(基础版) 推荐下载 从 0 到 10 的 Git版本控制器入门精讲 配合Git flow 流程使用的git 操作命令指南 “我仍认为我们接受高等教育的目的是帮助我们的家乡摆脱贫困
大家好,我是狼王,一个爱打球的程序员 这篇主要让我们来学习一下Git,这个分布式版本控制系统 ---- 在日常工作中,经常会用到Git操作。但是对于很多人来讲,刚上来对Git很陌生,操作起来也很懵逼。...每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id,commit-id在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与...git merge test,然后会得到如下结果: D--------E / \ A---B---C---F----G test, master 在master...执行git rebase test,然后得到如下结果: A---B---D---E---C'---F' test, master 可以看到,merge操作会生成一个新的节点,之前的提交分开显示。...有时候,我们用Git的时候有可能commit提交代码后,发现这一次commit的内容是有错误的,那么有两种处理方法: 修改错误内容,再次commit一次 使用git reset 命令撤销这一次错误的commit
彻底删除指定版本: # 执行下面命令后,commit-hash 提交后的记录都会被彻底删除,使用需谨慎 $ git reset --hard $ git push -f...一种方法是: (master)$ git reset --hard origin/my-branch # 我需要提交到一个新分支,但错误的提交到了 master 在 master 下创建一个新分支,不切换到新分支...(merge) 或 rebase 了一个错误的分支,或者完成不了一个进行中的 rebase/merge。...upstream/master origin/master # 我不知道我做错了些什么 你把事情搞砸了:你 重置(reset) 了一些东西,或者你合并了错误的分支,亦或你强推了后找不到你自己的提交...基本上,每次 HEAD 的改变,一条新的记录就会增加到 reflog 。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
后来,在加州理工州立大学,在小组项目中我接触到了 Concurrent Versions System (CVS),但那时做过的项目实在少的可怜,因此我当时也并没有很好的理解它。...它简直太神奇了 - 我可以像它在本地托管一样对待它,同时也可以与他人互动。没有锁定,离线可用,智能合并。我爱上她了。 从此 Git 火了。它成为了开源的标准。它在各种开源托管平台中使用。...undo=reset--soft HEAD^ - 如果我在做出提交时犯了一个错误,这个命令会把代码恢复到提交之前的样子。通常我只是在这种情况下修改现有的提交,因为它保留了提交信息。...你经常会用 git checkout master,对吧?在该命令中, master是 revision (修订版本)的示例,是引用 master 分支中最新提交的简写。...我很惊讶它是多么全面! 记住,在一个revision 中你可以使用大多数的 git 命令,比如: git glog master@{10.days.ago}..master 动起来吧!
选这个use git from git bash only 安装完成后我的电脑上是显示了这么三个东西的。 Git CMD: Git CMD我并没用过,但是我查了一下它是什么。...据别人说,Git中的Bash是基于CMD的,在CMD的基础上增添一些新的命令与功能。所以建议在使用的时候,用Bash更加方便(原网址)。...使用cd命令进入到目录中时,在Git-Bash中应该使用斜线”/”, 而不是反斜线”\” ①可以逐个输入文件夹名(在文件夹名称前要加cd ) ②也可以直接输入一个完整的文件夹路径 3.2...向一个空的新仓库中推文件: 仓库名称:刚才我添加连接的时候,给仓库起名叫origin 分支:你现在只有主分支,所以分支直接写master。...只有第一次推的时候需要加上-u,以后的推送只输入: git push 名称 分支 还有一个 git push origin master -f 强制推送,如果你某次推送失败,git bash报错,你懒得处理错误
且最初在 Git 中写下“master”一词的开发者 Petr Baudis 也于 6 月份在社交网站上表明立场称,自己当年不该使用“master”这个可能给别人造成伤害的词语。...使用以下命令将master分支移到main: git branch -m master main 使用以下命令将新命名的main分支推送到GitHub(假设这是您的远程存储库): git push...在左侧边栏中,点击“分支”,然后从下拉列表中选择“Main”作为默认值。点击“更新”,出现提示后,点击“我了解”。...--set-upstream origin G1 命令后本地与远程的关联要是仍旧没有建立成功,则再次执行 git push -u origin G1 即可成功建立本地与远程的关联。...在新的页面提交,显示从G1合并到main,绿色对勾代表可以合并,没有冲突,并且下面会显示分支中添加的内容。 ? 在我们的拉取请求中可以看到刚才我们的请求。
原理 个人认为,对于 Git 这个版本工具,再不了解原理的情况下,直接去学习命令行,可能会一头雾水。所以,本文特意将原理放在命令使用章节之前讲解。...> 彻底删除指定版本: # 执行下面命令后,commit-hash 提交后的记录都会被彻底删除,使用需谨慎 $ git reset --hard $ git push -f...: (master)$ git reset --hard origin/my-branch 我需要提交到一个新分支,但错误的提交到了 master 在 master 下创建一个新分支,不切换到新分支,仍在...Rebasing 和合并(Merging) 我想撤销 rebase/merge 你可以合并(merge)或 rebase 了一个错误的分支, 或者完成不了一个进行中的 rebase/merge。...基本上, 每次 HEAD 的改变, 一条新的记录就会增加到reflog。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
原理 个人认为,对于 Git 这个版本工具,再不了解原理的情况下,直接去学习命令行,可能会一头雾水。所以,本文特意将原理放在命令使用章节之前讲解。...一种方法是: (master)$ git reset --hard origin/my-branch 我需要提交到一个新分支,但错误的提交到了 master 在 master 下创建一个新分支,不切换到新分支...Rebasing 和合并(Merging) 我想撤销 rebase/merge 你可以合并(merge)或 rebase 了一个错误的分支, 或者完成不了一个进行中的 rebase/merge。...(master)$ git rebase -i @{u} 这会产生一次交互式的 rebase(interactive rebase), 只会列出没有推(push)的提交(commit), 在这个列表时进行...基本上, 每次 HEAD 的改变, 一条新的记录就会增加到reflog。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
且最初在 Git 中写下“master”一词的开发者 Petr Baudis 也于 6 月份在社交网站上表明立场称,自己当年不该使用“master”这个可能给别人造成伤害的词语。...使用以下命令将master分支移到main: git branch -m master main 使用以下命令将新命名的main分支推送到GitHub(假设这是您的远程存储库): git push origin...在左侧边栏中,点击“分支”,然后从下拉列表中选择“Main”作为默认值。点击“更新”,出现提示后,点击“我了解”。...代表当前目录 git commit -m ‘注释’ 将缓存区内容添加到本地仓库 git pull origin main先将远程仓库main中的信息同步到本地仓库main中 git push origin...--set-upstream origin G1 命令后本地与远程的关联要是仍旧没有建立成功,则再次执行 git push -u origin G1 即可成功建立本地与远程的关联。
但找工作面试和一些需彰显个人实力的场景,仍然需要我们掌握足够多的git命令。 下边我们整理了45个日常用git合代码的经典操作场景,基本覆盖了工作中的需求。 我刚才提交了什么?...) ------------ 我从错误的分支拉取了内容,或把内容拉取到了错误的分支 这是另外一种使用 git reflog 情况,找到在这次错误拉(pull) 之前HEAD的指向。.../my-branch 我需要提交到一个新分支,但错误的提交到了main 在main下创建一个新分支,不切换到新分支,仍在main下: (main)$ git branch my-branch...Rebasing 和合并(Merging) --------------------- 我想撤销rebase/merge 你可以合并(merge)或rebase了一个错误的分支, 或者完成不了一个进行中的...基本上, 每次HEAD的改变, 一条新的记录就会增加到reflog。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
但找工作面试和一些需彰显个人实力的场景,仍然需要我们掌握足够多的git命令。 下边我们整理了45个日常用git合代码的经典操作场景,基本覆盖了工作中的需求。 我刚才提交了什么?...: (main)$ git reset --hard origin/my-branch 我需要提交到一个新分支,但错误的提交到了main 在main下创建一个新分支,不切换到新分支,仍在main下: (...Rebasing 和合并(Merging) 我想撤销rebase/merge 你可以合并(merge)或rebase了一个错误的分支, 或者完成不了一个进行中的rebase/merge。.../filename2.ext 暂存时记录消息 这样你可以在list时看到它 $ git stash save 或 $ git stash push -m 使用某个指定暂存...基本上, 每次HEAD的改变, 一条新的记录就会增加到reflog。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
但找工作面试和一些需彰显个人实力的场景,仍然需要我们掌握足够多的git命令。 下边我们整理了45个日常用git合代码的经典操作场景,基本覆盖了工作中的需求。 我刚才提交了什么?...: (main)$ git reset --hard origin/my-branch 我需要提交到一个新分支,但错误的提交到了main 在main下创建一个新分支,不切换到新分支,仍在main下:...Rebasing 和合并(Merging) 我想撤销rebase/merge 你可以合并(merge)或rebase了一个错误的分支, 或者完成不了一个进行中的rebase/merge。.../filename2.ext 暂存时记录消息 这样你可以在list时看到它 $ git stash save 或 $ git stash push -m 使用某个指定暂存...基本上, 每次HEAD的改变, 一条新的记录就会增加到reflog。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
、但没有加入新功能;在另一个开发版本则有新的功能正在开发、也有新的错误待解决,这使得同时间需要不同的版本; 此外,为了找出只存在于某一特定版本中(由于修正了某些问题、或新加功能所导致)的程序错误,...生成SSH密钥: ssh-keygen -t rsa 这句命令的意思是用RSA算法生成密钥(windows系统最好在Git Bash下执行,cmd终端可能并没有安装ssh),执行后出来三次提示均按回车,...commit" 向远程仓库推送本地仓库文件: Gitee只执行这条命令即可推送: git push -u origin master 从2020年10月开始,Github的默认分支从master变成了...main,因此还需要将本地默认主分支重命名为main才能推送成功: git branch -M main git push -u origin main 如果不重命名主分支,就会出现“error: src...默认分支是main,用以下命令: git push origin main # Gitee默认分支是master,用以下命令: git push origin master 这里的origin是给远程仓库起的名字
我从错误的分支拉取了内容,或把内容拉取到了错误的分支 这是另外一种使用 git reflog 情况,找到在这次错误拉(pull) 之前HEAD的指向。...我需要提交到一个新分支,但错误的提交到了main 在main下创建一个新分支,不切换到新分支,仍在main下: (main)$ git branch my-branch 把main分支重置到前一个提交...Rebasing 和合并(Merging) 我想撤销rebase/merge 你可以合并(merge)或rebase了一个错误的分支, 或者完成不了一个进行中的rebase/merge。.../filename2.ext 暂存时记录消息 这样你可以在list时看到它 $ git stash save 或 $ git stash push -m 使用某个指定暂存...基本上, 每次HEAD的改变, 一条新的记录就会增加到reflog。遗憾的是,这只对本地分支起作用,且它只跟踪动作 (例如,不会跟踪一个没有被记录的文件的任何改变)。
本文可以看作是它的文字版,将其中各级关卡所要学习的概念和命令提取出来,方便查阅。文中的一些示例,如果没有显而易见的输出,就需要读者在沙盒中亲自输入来查看效果。...只要记住使用分支其实就相当于在说:“我想基于这个提交以及它所有的父提交进行新的工作” 就好啦。...然后再创建一个跟踪远程仓库中活动分支的本地分支,默认情况下这个本地分支会被命名为 master。克隆完成后,你会得到一个本地分支,但是可以查看远程仓库中所有的分支。...,然后该分支会像 master 分支一样得到隐含的 push 目的地以及 merge 的目标。...origin master 切到本地仓库中的“master”分支,获取所有的提交,再到远程仓库“origin”中找到“master”分支,将远程仓库中没有的提交记录都添加上去,搞定之后告诉我。
保存点:Git的保存点可以追踪源码中的文件, 并能得到某一个时间点上的整个工程项目的状态;可以在该保存点将多人提交的源码合并, 也可以回退到某一个保存点上。...(2)系统自带CMD:使用Windows系统的命令行工具。.../testgit.git git push -u origin master所有的如下: 如果出现如下错误: 可以先执行如下命令,然后再执行上面的命令 git remote rm origin...由于远程库是空的,我们第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来...比如我在开发中接到一个404 bug时候,我们可以创建一个404分支来修复它,但是,当前的dev分支上的工作还没有提交。
领取专属 10元无门槛券
手把手带您无忧上云