
工作区:就是电脑里本地能看到的目录,它持有实际文件。
缓存区/暂存区:英文名叫 stage 或 index。在执行git add命令之后,会把工作区的修改记录添加到缓存区以便跟踪。它像个缓存区域,临时保存你的改动。
说明:缓存区的文件一般存放在 .git 目录下的 index 文件(.git/index)中,所以我们把暂存区也叫作索引(index)。
版本库/本地仓:英文名Repository,管理代码版本的地方,在执行git commit命令之后,会把缓存区的修改记录提交到版本库里。
说明:在一个空文件下,执行git init命令之后,会在该文件下创建一个版本库(.git),它是一个隐藏的目录。
$ git checkout – <某文件>… #在工作区,撤销对某文件的修改
如果是放弃所有文件里的修改,直接使用git checkout .
说明:此命令只针对已经修改的内容和已经删除的文件,但不会删除刚新建的文件,因为刚新建的文件还没有加入到git的管理系统中。所以对于git来说,刚新建的文件是未知的。自己动手删除即可。
情况说明:已经修改的文件已经add到暂存区/缓存中了,但是没有commit,此时如果不想提交这个文件的修改。
$ git reset HEAD <某文件> #用版本库内容清空暂存区
如果是放弃所有修改,直接使用get reset HEAD .
1) $ git fetch --all #拉去所有的更新,不同步;
2) $ git reset --hard origin/master #本地代码同步远程最新版本(会覆盖本地所有与远程仓库上同名的文件),git reset指令把HEAD指向master最新版本。
3) $ git pull #再次更新,其实也可以不用执行这一步,因为第2步命令已经保证了与远程仓相同。
简化命令:$ git fetch --all && git reset --hard origin/master && git pull
从正常切换到游离状态
$ git branch -a
从游离状态切换到正常
$ git checkout <某分支名称>
1)获取A分支上需要合并的那一笔commit-id
$ git log #找到需要合并的id
2、切换到B分支
$ git checkout <B分支名称>
3、将A分支上的提交合并到B分支
$ git cherry-pick
1) 手动解决冲突
2) 将修改的文件重新加入暂存区
$ git add .
3)继续合并:$ git cherry-pick --continue
放弃合并:$ git cherry-pick --abort
退出合并:$ git cherry-pick --quit
1、查看当前远程仓
$ git remote -v
2、方式一:直接修改
$ git remote set-url origin xxxxx.git
方式二:先删后加
$ git remote rm origin
$ git remote add origin xxxxx.git
SPI接收数据左移一位问题目录SPI接收数据左移一位问题一、问题描述二、问题分析三、探究原理四、经验总结最近在工作在学习调试SPI的过程中遇到一个问题——接收数据整体向左移了一位(1bit)。SPI数据收发是数据交换,因此接收数据时从第二个字节开始才是有效数据,也就是数据整体向右移一个字节(1byte)。请教前辈之后也没有得到解决,通过在网上查阅前人经验终于解决问题,所以写一个避坑经验总结。实际背景:MCU与一款芯片使用spi通信,MCU作为主机,芯片作为从机。这款芯片采用的是它规定的六线SPI,多了两根线:RDY和INT,这样从机就可以主动请求主机给主机发送数据了。一、问题描述根据从机芯片手
文章目录git常用命令(简介,详细参数往下看)Git提交代码步骤gitpullgitstatusgitaddgitcommitgitpushgit代码冲突合并问题方法一:放弃本地代码方法二:合并代码常用命令以及详细参数gitadd将文件添加到仓库:gitdiff比较文件异同gitlog查看历史记录gitreset代码回滚版本库相关操作远程仓库相关操作分支相关操作创建分支查看分支:gitbranch合并分支:gitmerge删除分支:gitbranch-ddev查看分支合并图:gitlog–graph–pretty=oneline–abbrev-commit撤消某次提交git用户名密码相关配置g
关于如何使用git设置类似Dropbox的服务,您有什么建议吗?您认为git是解决此问题的合适工具吗?我在考虑使用git+rush解决方案,你觉得怎么样? 最佳答案 检查这个开源项目:https://github.com/hbons/SparkleShare来自项目的自述文件:Howdoesitwork?SparkleSharecreatesaspecialfolderonyourcomputer.Youcanaddremotelyhostedfolders(or"projects")tothisfolder.Theseprojec
我编写了一个非常简单的“部署”脚本,作为我的裸git存储库中的post-updateHook运行。变量如下livedomain=~/mydomain.comstagingdomain=~/stage.mydomain.comgitrepolocation=~/git.mydomain.com/thisrepo.git(bare)core=~/git.mydomain.com/thisrepo.gitcore==addedremoteintoeachlive&stagegitslive和stage都初始化了gitrepos(非裸),我已经将我的裸仓库作为远程添加到它们中的每一个(名为co
我正在安装gitlabhq,并且在Gemfile中有对某些资源的“git://...”的引用。但是,我在公司防火墙后面,所以我必须使用http://。我可以手动编辑Gemfile,但我想知道是否有另一种方法告诉bundler使用http://作为git存储库? 最佳答案 您可以通过运行gitconfig--globalurl."https://".insteadOfgit://或通过将以下内容添加到~/.gitconfig:[url"https://"]insteadOf=git://
Activeadmingem已添加到我的rails项目中,但每次我尝试安装railsgactive_admin:install时,我都会收到类似的错误git://github.com/activeadmin/activeadmin.git(atmaster)isnotyetcheckedout.Runbundleinstallfirst.我肯定在运行“railsgactive_admin:install”之前运行了bundle。运行“bundleshow”后,我看到我已将“*activeadmin(1.0.0.pre3f916d6)”添加到我的项目中,但不断收到此错误消息。我的gem文
文章目录一、项目场景二、基本模块原理与调试方法分析——信源部分:三、信号处理部分和显示部分:四、基本的通信链路搭建:四、特殊模块:interpretedMATLABfunction:五、总结和坑点提醒一、项目场景 最近一个任务是使用simulink搭建一个MIMO串扰消除的链路,并用实际收到的数据进行测试,在搭建的过程中也遇到了不少的问题(当然这比vivado里面的debug好不知道多少倍)。准备趁着这个机会,先以一个很基本的通信链路对simulink基础和相关的debug方法进行总结。 在本篇中,主要记录simulink的基本原理和基本的SISO通信传输链路(QPSK方式),计划在下篇记
我在bitbucket上创建了一个私有(private)git存储库并提交了代码。现在我想导出所有(提交、代码、历史记录)并将其导入github上的gitrepo。有没有办法做到这一点?谢谢 最佳答案 在本地检查所有内容到您的计算机和gitpull。创建一个github存储库将此存储库添加为您的第二个远程(“使用gitremote添加githubURL”)推送到第二个Remote 关于ruby-git:从bitbucket导出并导入github(带提交),我们在StackOverflow
亲测可用。Anerroroccurredwhileresolvingpackages:Projecthasinvaliddependencies: com.unity.xxx:No'git'executablewasfound.PleaseinstallGitonyour systemthenrestartUnityandUnityHub在我们使用PackageManager时,Unity允许我们使用Git上的package(点击加号,选择addpackagefromgitURL,或者是直接在Asset/Packages/manifest.json中添加包名)。但是这种操作需要我们事先装好g
我在Windows上使用GitBash来完成我的大部分Rails工作,每次我运行bundleexecrspecspec它都会提醒我“你必须geminstallwin32console才能使用Windows上的颜色”,然后以纯黑色和白色运行RSpec。但是我确实安装了win32console,当我在列表中运行gemlist时,它有win32console(1.3.0x86-mingw32)。RSpec工作正常,但我希望它有一些颜色。我用谷歌搜索了这个并找到了多种解决方案,但似乎没有一个适合我。有人可以写出在GitBashforWindows上使用RSpec获取颜色的“循序渐进”方法吗?