问题出现场景:
在公司中部门其他人员已经创建了某个分支,要求我们在这个分支进行开发,这时候我们就遇到了以下问题:我们本地默认是只有master/main分支,那如何提交代码到上述远程分支呢?
问题解决策略:
第一步:查看本地分支:git branch

第二步:查看远程分支:git branch -a

(因为手头没有做示例的git仓库,所以p图假设一下,这里V1.0本地没有的远程分支)
第三步:创建一个本地分支V1.0用来关联远程分支V1.0
git checkout -b V1.0(分支名,可以随便起) origin/V1.0

第四步:git branch、git branch -a 查看分支情况
这时会发现本地和远程分支都已经切换到了V1.0上
第五步: 1.git add . 2.git commit -m "备注信息" 3.git pull 4. git push
问题出现场景:
在上述第一种情况中提到了部门其他人员已经创建了某个分支,要求我们在这个分支进行开发,那么他们在创建这个分支后肯定要将项目代码也提交到这个分支上,然后再给我们开发。所以他们是怎么创建一个新的远程分支并且将代码提交上去的呢?
问题解决策略:
第一步:查看远程和本地的当前分支:git branch -a 、 git branch

第二步:创建一个本地分支:git checkout -b V1.1(分支名)

此时再查看本地分支和远程分支,我们发现本地分支切换到了V1.1,但是远程却没有这个分支!

第三步:建立本地分支和远程分支的关联(创建远程分支)
git push --set-upstream origin V1.1(分支名)

此时再查看远程是否成功创建了V1.1这个分支
看下图可以发现V1.1远程分支已经创建,并且当前分支也切换到了V1.1
这就说明了本地V1.1和远程V1.1分支已经成功关联,可以进行提交代码的操作了!

第四步:拉取、提交、推送 1.git add . 2.git commit -m "备注信息" 3.git pul 4.git push

如图成功提交代码!
补:当我们commit之后 发现自己的-m" " 的备注写错了 或者突然发现想要提交的代码还有问题需要修改,那怎么撤销commit进行回滚呢?
可以使用命令:git reset --soft HEAD^ 这样就成功撤销了commit。
解释:
HEAD^ 表示上一个版本,即上一次的commit,几个^代表几次提交,如果回滚两次就是HEAD^^。也可以写成HEAD~1,如果进行两次的commit,想要都撤回,可以使用HEAD~2。
--soft不删除工作空间的改动代码 ,撤销commit,不撤销add
--hard删除工作空间的改动代码,撤销commit且撤销add
如果commit后面的注释写错了,先别急着撤销,可以运行git commit --amend 进入vim编辑模式,修改完保存即可
另外,在IDEA中直接输入git reset --soft HEAD^会提示more,这是什么意思,又该如何解决呢?

原因:这是因为cmd控制台中换行符默认是 ^ ,而不是\ ,所以它的 more?的意思是问你下一行是否需要再输入,而 ^ 符号就被当做换行符而被 git 命令忽略掉了。
解决办法:
方法一:加引号:git reset --hard “HEAD^”
方法二:加一个^:git reset --hard HEAD^^
方法三:换成~:git reset --hard HEAD~ 或者 git reset --hard HEAD~1
~ 后面的数字表示回退几次提交(上面1次为例)

如果这篇文章帮助到了您,请给博主点个关注和赞吧!
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack
在rails源中:https://github.com/rails/rails/blob/master/activesupport/lib/active_support/lazy_load_hooks.rb可以看到以下内容@load_hooks=Hash.new{|h,k|h[k]=[]}在IRB中,它只是初始化一个空哈希。和做有什么区别@load_hooks=Hash.new 最佳答案 查看rubydocumentationforHashnew→new_hashclicktotogglesourcenew(obj)→new_has
我正在尝试修改当前依赖于定义为activeresource的gem:s.add_dependency"activeresource","~>3.0"为了让gem与Rails4一起工作,我需要扩展依赖关系以与activeresource的版本3或4一起工作。我不想简单地添加以下内容,因为它可能会在以后引起问题:s.add_dependency"activeresource",">=3.0"有没有办法指定可接受版本的列表?~>3.0还是~>4.0? 最佳答案 根据thedocumentation,如果你想要3到4之间的所有版本,你可以这
我有一个这样的哈希数组:[{:foo=>2,:date=>Sat,01Sep2014},{:foo2=>2,:date=>Sat,02Sep2014},{:foo3=>3,:date=>Sat,01Sep2014},{:foo4=>4,:date=>Sat,03Sep2014},{:foo5=>5,:date=>Sat,02Sep2014}]如果:date相同,我想合并哈希值。我对上面数组的期望是:[{:foo=>2,:foo3=>3,:date=>Sat,01Sep2014},{:foo2=>2,:foo5=>5:date=>Sat,02Sep2014},{:foo4=>4,:dat
我刚刚被困在这个问题上一段时间了。以这个基地为例:moduleTopclassTestendmoduleFooendend稍后,我可以通过这样做在Foo中定义扩展Test的类:moduleTopmoduleFooclassSomeTest但是,如果我尝试通过使用::指定模块来最小化缩进:moduleTop::FooclassFailure这失败了:NameError:uninitializedconstantTop::Foo::Test这是一个错误,还是仅仅是Ruby解析变量名的方式的逻辑结果? 最佳答案 Isthisabug,or
我的主要目标是能够完全理解我正在使用的库/gem。我尝试在Github上从头到尾阅读源代码,但这真的很难。我认为更有趣、更温和的踏脚石就是在使用时阅读每个库/gem方法的源代码。例如,我想知道RubyonRails中的redirect_to方法是如何工作的:如何查找redirect_to方法的源代码?我知道在pry中我可以执行类似show-methodmethod的操作,但我如何才能对Rails框架中的方法执行此操作?您对我如何更好地理解Gem及其API有什么建议吗?仅仅阅读源代码似乎真的很难,尤其是对于框架。谢谢! 最佳答案 Ru
我的假设是moduleAmoduleBendend和moduleA::Bend是一样的。我能够从thisblog找到解决方案,thisSOthread和andthisSOthread.为什么以及什么时候应该更喜欢紧凑语法A::B而不是另一个,因为它显然有一个缺点?我有一种直觉,它可能与性能有关,因为在更多命名空间中查找常量需要更多计算。但是我无法通过对普通类进行基准测试来验证这一点。 最佳答案 这两种写作方法经常被混淆。首先要说的是,据我所知,没有可衡量的性能差异。(在下面的书面示例中不断查找)最明显的区别,可能也是最著名的,是你的
几个月前,我读了一篇关于rubygem的博客文章,它可以通过阅读代码本身来确定编程语言。对于我的生活,我不记得博客或gem的名称。谷歌搜索“ruby编程语言猜测”及其变体也无济于事。有人碰巧知道相关gem的名称吗? 最佳答案 是这个吗:http://github.com/chrislo/sourceclassifier/tree/master 关于ruby-寻找通过阅读代码确定编程语言的rubygem?,我们在StackOverflow上找到一个类似的问题:
我目前正在使用以下方法获取页面的源代码:Net::HTTP.get(URI.parse(page.url))我还想获取HTTP状态,而无需发出第二个请求。有没有办法用另一种方法做到这一点?我一直在查看文档,但似乎找不到我要找的东西。 最佳答案 在我看来,除非您需要一些真正的低级访问或控制,否则最好使用Ruby的内置Open::URI模块:require'open-uri'io=open('http://www.example.org/')#=>#body=io.read[0,50]#=>"["200","OK"]io.base_ur