<div dir="ltr"><div><div><div>I&#39;m rebasing my generic-sets branch onto the pkg2 branch to make sure that rebasing works well.  Just using the default rebase options hasn&#39;t worked, it doesn&#39;t figure out to follow the renames.  The following command seems to be working, however; it may work for other people as well:<br>

<br>  git rebase -s recursive -X rename-threshold=50% mflatt/pkg2<br><br></div>This tells git that any files that are at least 50% similar (I guess by line count?) are considered renamed versions of each other, and I guess gives it permission to do the necessary, somewhat expensive search to figure out which files to change in the rebased version instead of the ones you actually changed in the original.  I also had to run the following command first:<br>

<br>  git config merge.renameLimit 100000<br><br></div><div>Otherwise git won&#39;t use the rename-threshold, because there are too many files to consider in our repository and it doesn&#39;t believe you really want it to do _that much_ work.  You can revert this afterward with:<br>

<br></div><div>  git config --unset merge.renameLimit<br><br>&lt;rant&gt;I don&#39;t understand why version control systems don&#39;t take directories and renames more seriously, because this stuff is part of the development cycle and should be recorded like any other change.&lt;/rant&gt;<br>

</div><br></div>Anyway, if any of you out there are having trouble rebasing onto Matthew&#39;s packages branch, try the commands above.<br><div><div><div><div><div class="gmail_extra"><br clear="all"><div>Carl Eastlund</div>


<br><div class="gmail_quote">On Tue, Jun 18, 2013 at 12:47 PM, Matthew Flatt <span dir="ltr">&lt;<a href="mailto:mflatt@cs.utah.edu" target="_blank">mflatt@cs.utah.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

Here&#39;s the latest (in a &quot;pkg2&quot; branch):<br>
<br>
 <a href="https://github.com/mflatt/racket/tree/pkg2" target="_blank">https://github.com/mflatt/racket/tree/pkg2</a><br>
<br>
Because this change will break all sorts of things in the short run,<br>
I&#39;d like to feel more confident that enough of us are ready before<br>
merging it to the main Racket repository.<br>
<br>
So, vote in favor of the reorganization like this:<br>
<br>
 1. Try the branch:<br>
<br>
      git clone <a href="https://github.com/mflatt/racket.git" target="_blank">https://github.com/mflatt/racket.git</a><br>
      cd racket<br>
      git checkout pkg2<br>
      make<br>
      racket/bin/drracket<br>
<br>
 2. Reply to the list to say that it works and we should merge it.<br>
<br>
 3. If you have code in &quot;pkgs&quot;, be ready to help get that code into the<br>
    right shape/packages after the merge.<br>
<br>
Thanks!<br>
<br>
<br>
(We haven&#39;t yet changed anything about single-collection versus<br>
multi-collection packages. That&#39;s currently planned for right after the<br>
merge.)<br></blockquote></div></div></div></div></div></div></div>