克隆github存储库的最佳方法

时间:2013-04-16 17:04:01

标签: ruby-on-rails-3 git github

好的,这就是情景。

我犯了一个非常糟糕的新手错误。我正在研究一些代码,并没有创建一个dev分支来检查和测试开发。所以我已经对我的机器上的主分支进行了所有这些更改,这些更改仍然存在(正在开发中),我的老板希望我对生产中的应用程序进行一些更改。

我对如何做到这一点的想法是:

  1. 重命名我的项目目录,以便我有一个备份
  2. git将最后一个远程版本克隆回我的机器
  3. 进行他想要的轻微更改并重新部署/提交
  4. 整理我在旧版应用程序中更改的内容,并将其放入新分区的主分支的开发分支中。
  5. 对此有何想法?我现在真的不想搞砸生产而且我做了太多改动以跟踪恢复代码稳定的地方。

2 个答案:

答案 0 :(得分:1)

无需经历那么多麻烦:

git checkout master              # get the 'bad' version
git branch bad-master            # make a new branch called 'bad-master', cut off master's current state
git fetch                        # make sure you're up to date with the remote
git reset --hard origin/master   # reset your master branch to origin/master's state
<work work work>
git checkout bad-master          # when you're ready to work on bad-master again

请注意,git reset --hard origin/master会丢弃您尚未办理登机手续的工作树中的任何工作......所以如果您已经完成工作但尚未投入,请确保到git stash它。

答案 1 :(得分:0)

这是一个完全正常的情况,你可以很容易地从中恢复。

您需要做的就是:

  1. 创建一个新分支,指向您的当前版本的主

    git checkout -b my-feature-branch
    
  2. 您的主程序重置为与origin / master相同的内容

    git checkout master
    git reset --hard origin/master
    
  3. 就是这样。现在你的主人和你进行你的功能开发之前是一样的,并且你有一个功能分支,你可以稍后检查以恢复开发。