????? Thanks to Ott and others, I now have separate GitHub
repositories, one for each of the packages combined in the Ecdat R-Forge
project.? In case it might help others in the future, I will summarize
here key things I did to make this transition:
??? ??????? 1.? I first copied the "Ecfun" package into its own
directory on my local computer and created a separate GitHub repository
for that.? I lost the history in doing so, but I can live without that
history.
??? ??????? 2.? I moved the contents of "~Ecdat/pkg/Ecdat" to
"~Ecdat"
and deleted the now-empty ""pkg/Ecdat" subdirectory.? I first
tried to
do this in RStudio, but wasn't sure it was done correctly.? So I used
"?git reset --hard HEAD? to revert all that. Then I copied the material
in Finder on my Mac, so I could see what I was doing.? Then I did "git
add" of the individual files and folders in a Terminal plus "git rm -r
pkg" to delete
??? ??????? 3.? Then I set up automatic checking for both packages
using Travis CI as described by Hadley's "R Packages"
(http://r-pkgs.had.co.nz/check.html).? [GitHub complained that
".travis.yml" didn't belong there.? Danny Smith on Rd told me to
add it
to ".Rbuildignore".? I found it was already there, but
".Rbuildignore"
was not part of the repository.? Now it is.]
??? ??????? 4.? Along the way, GitHub kept asking for my username and
password, even though I had established SSH authentication.? I traced
the problem to the ".git/config" that said, "url =
https://github.com/sbgraves237/Ecdat".? I changed that line to read
"url
= https://sbgraves237:password at github.com/sbgraves237/Ecdat" (where
"password" is my GitHub password, which I had to change to make it
work
there, because it included "@" ;-)? oops.
??? ??????? 5.? I also had problems with "Warning: ?inst/doc?
files":?
Those had not existed in the R-Forge versions but appeared somehow in
migrating them to GitHub.? I deleted them in a Terminal with "git rm -r
inst/doc".? After "git commit" and "git push", I found
they had been
deleted from the GitHub repository but not my local computer, so I
deleted them locally -- without any apparent side effects.
????? Thanks again,
????? Spencer Graves
On 2019-07-03 23:30, Spencer Graves wrote:> ????? Thanks so much for your help.
>
>
> ????? Now your "git push -u origin master" was
"![rejected]", after
> creating a new SSH and after your "git clone" and other "git
remote
> rename ..." commands seemed to work:
>
>
> $ git clonegit at github.com:joshuaulrich/tmp-ecfun.git Ecdat
> # Cloning into 'Ecdat'...<snip> done.
>
> $ cd Ecdat/
> $ git remote rename origin tmp
> $ git remote add originhttps://github.com/sbgraves237/Ecdat
> $ git push -u origin master
> #[Username & password OK]
> Tohttps://github.com/sbgraves237/Ecdat
> ?! [rejected]??????? master -> master (fetch first)
> error: failed to push some refs to
'https://github.com/sbgraves237/Ecdat'
> hint: Updates were rejected because the remote contains work that you do
> hint: not have locally. This is usually caused by another repository
pushing
> hint: to the same ref. You may want to first integrate the remote changes
> hint: (e.g., 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push
--help' for details.
> SpenceravessMBP:Ecdat sbgraves$
>
>
> ????? Suggestions?
> ????? Thanks again,
> ????? Spencer Graves
>
>
> On 2019-07-01 01:05, Ott Toomet wrote:
>> Apparently you created id_rsa key pair with a passphrase. Passphrase
>> is like an additional password protection layer on your ssh key.? I
>> don't know how did you create it.? But you can always create a new
one
>> (you should delete the old one before you create a new one) using the
>> shell command 'ssh-keygen'.? It asks for a passphrase, just
push enter
>> for an empty passphrase (twice).? You also have to update the ssh
>> public key (id_rsa.pub) on github by supplying the new public key
>> (id_rsa.pub).
>>
>> There are some implications you should be aware of:
>> * if you delete id_rsa*, you cannot use any ssh authorization that
>> relies on this key any more (that's why you have to update on GH).
>> >From the what you write (... created 2 days ago) I guess you do not
>> use these keys elsewhere but I may be wrong.
>> * if you supply empty passphrase, you bypass the optional extra
>> security layer.? I think this is OK for open source software
>> development on your personal computer but your preferences/situation
>> may differ.
>> * You cannot use the same keys with passphrase if they are created
>> without one.? This is likely not an issue, but if it turns out to be a
>> problem, you can either add passphrase to the default keys, or create
>> another set of keys, passphrase protected.
>>
>> Cheers,
>> Ott
>>
>>
>> On Sun, Jun 30, 2019 at 9:51 PM Spencer Graves
>> <spencer.graves at prodsyse.com <mailto:spencer.graves at
prodsyse.com>> wrote:
>>
>>
>>
>> On 2019-06-30 06:58, Joshua Ulrich wrote:
>> <snip>
>>
>> > I imported both packages into separate repositories:
>> >https://github.com/joshuaulrich/tmp-ecdat
>> >https://github.com/joshuaulrich/tmp-ecfun
>> >
>> > I changed your email address on your R-Forge commits to match
your
>> > GitHub email address, so R-Forge commits would be associated
>> with your
>> > GitHub account.? I also omitted the "move" commit
from Ecdat,
>> and the
>> > "obsolete > GitHub" commits from both packages.?
I've attached a
>> file
>> > with the commands I used, if anyone is interested.
>> >
>> > You can use my repos by cloning them to your local machine,
adding
>> > your repos as new remotes, and pushing to them.? You would
need
>> to run
>> > these commands (untested):
>> >
>> > ### clone my GitHub repo to your machine
>> > git clonegit at github.com:joshuaulrich/tmp-ecfun.git Ecdat
>>
>>
>> Thanks so much.? Sadly, I'm still having troubles.? This
"git
>> clone ..."
>> generates:
>>
>>
>> Enter passphrase for key '/Users/sbgraves/.ssh/id_rsa':
>>
>>
>> ?????? Sadly, I don't know the passphrase it's looking for
here,
>> and I
>> don't know how to find what it's looking for.? Under
GitHub >
>> Settings >
>> "SSH and GPG keys", I see an SSH key dated two days ago,
when I
>> cloned
>> Ecdat from within RStudio.? And in "~.ssh" I see files
id_rsa and
>> id_rsa.pub, both created two days ago.
>>
>>
>> ?????? What do you suggest I try to get past this?
>>
>>
>> ?????? Thanks again for all your help.
>>
>>
>> ?????? Spencer Graves
>>
>> > cd Ecdat
>> > ### rename my GitHub repo remote from 'origin' to
'tmp'
>> > git remote rename origin tmp
>> > ### add your GitHub repo remote as 'origin'
>> > ### NOTE: this should be a new, clean repo.
>> > ###? ? Rename your existing 'Ecdat' so you don't
overwrite it
>> > git remote add originhttps://github.com/sbgraves237/Ecdat
>> > ### push to your GitHub repo
>> > git push -u origin master
>> >
>> > Then you need to run similar commands for Ecfun.
>> >
>> > Best,
>> > Josh
>> >
>> >>>? ? ? ? ?Thanks,
>> >>>? ? ? ? ?Spencer
>> >>>
>> >>>
>> >>> On 2019-06-29 14:09, Henrik Bengtsson wrote:
>> >>>> On Sat, Jun 29, 2019 at 9:43 AM Spencer Graves
>> >>>> <spencer.graves at prodsyse.com
>> <mailto:spencer.graves at prodsyse.com>> wrote:
>> >>>>> Hi, Ott et al.:
>> >>>>>
>> >>>>>
>> >>>>>? ? ? ? ? What's the best way to get
"Travis CI" to build and
>> test the two
>> >>>>> packages, Ecdat and Ecfun, that have long
been combined in
>> the Ecdat
>> >>>>> project?
>> >>>>>
>> >>>>>
>> >>>>>? ? ? ? ? Following Ott's advice and
studying studying
>> Wickham's "R
>> >>>>> Packages" (http://r-pkgs.had.co.nz/), I
was able to
>> configure RStudio so
>> >>>>> it would sync using git with
>> "GitHub.com/sbgraves237/Ecdat".? However,
>> >>>>> when I tried to configure "Travis
CI", it said, "No
>> DESCRIPTION file
>> >>>>> found, user must supply their own install and
script steps".
>> >>>>>
>> >>>>>
>> >>>>>? ? ? ? ? Earlier in this thread, I think
someone suggested I
>> make the
>> >>>>> Ecdat and Ecfun packages separate projects on
GitHub (though
>> I can't
>> >>>>> find that suggestion now).? This would not be
an issue if it
>> were all
>> >>>>> local without version control.? With RStudio
managing my
>> interface with
>> >>>>> GitHub, it now seems quite tricky.
>> >>>> I'm 99.999% confident that your life will be
much much easier
>> if you
>> >>>> keep one R package per repository.? If you
don't, you'll
>> probably be
>> >>>> very lonely when it comes to tools etc. There are
built-in 'git'
>> >>>> commands, but also git utility tools, for
extracting a subset of
>> >>>> folders/files from git repository into new git
repositories.
>> You'll
>> >>>> still preserve the commit history.? I would deal
with this in the
>> >>>> terminal, using the 'git' client and
possible some extraction
>> tool.
>> >>>>
>> >>>> Also, while you spend time on this, have a look
at the commit
>> >>>> authorship that I mentioned previously.? It's
nice to have
>> that in
>> >>>> place later.
>> >>>>
>> >>>> After you got the above in place, then
.travis.yml and
>> appveyor.yml is
>> >>>> pretty straightforward (might even be a
copy'n'paste).
>> >>>>
>> >>>> Finally, I saw you put your credentials in the
URL when you
>> cloned.? I
>> >>>> don't think that's safe, your GitHub
credentials will be
>> stored in the
>> >>>> ./.git/config file.? Instead, just clone with:
>> >>>>
>> >>>> git clonehttps://github.com/sbgraves237/Ecdat.git
>> >>>>
>> >>>> You can then configure git to cache your HTTPS
credentials for a
>> >>>> certain time, e.g. 120 minutes, so you don't
have to enter
>> them each
>> >>>> time you pull/push.? See
>> https://git-scm.com/docs/git-credential-cache
>> >>>> for details.? That's what I tell new-comers
to
>> Git(Hub|Lab|...) to
>> >>>> use.? Personally, I add my public SSH key to
GitHub and then
>> clone
>> >>>> with the ssh protocol:
>> >>>>
>> >>>> git clonegit at github.com:sbgraves237/Ecdat.git
>> >>>>
>> >>>> That way my I never have to worry entering my
credentials.
>> >>>>
>> >>>> /Henrik
>> >>>>
>> >>>>>? ? ? ? ? Suggestions?
>> >>>>>? ? ? ? ? Thanks again to all who have offered
suggestions so
>> far.? This
>> >>>>> migration from R-Forge to GitHub seems
complete except for
>> the automatic
>> >>>>> tests provided via "Travis CI".
>> >>>>>
>> >>>>>
>> >>>>>? ? ? ? ? Spencer
>> >>>>>
>> >>>>>
>> >>>>> On 2019-06-28 22:25, Ott Toomet wrote:
>> >>>>>> Apparently your username/password are
wrong.? Can you
>> clone/push from
>> >>>>>> other repos?
>> >>>>>>
>> >>>>>> You do not need authorization when
cloning a public repo,
>> so even
>> >>>>>> incorrect credentials may work
(haven't tested this
>> though).? But for
>> >>>>>> push you have to have that in order.
>> >>>>>>
>> >>>>>> I suggest you create ssh keys, upload
those to GH, and use ssh
>> >>>>>> authorization instead of https.
>> >>>>>>
>> >>>>>> Cheers,
>> >>>>>> Ott
>> >>>>>>
>> >>>>>> On Fri, Jun 28, 2019 at 8:18 PM Spencer
Graves
>> >>>>>> <spencer.graves at prodsyse.com
>> <mailto:spencer.graves at prodsyse.com>
>> <mailto:spencer.graves at prodsyse.com
>> <mailto:spencer.graves at prodsyse.com>>> wrote:
>> >>>>>>
>> >>>>>>? ? ? ?Thanks to Duncan, Henrik and
Henrik, Brian, and G?bor:
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ? ? ? ? I created a local copy of
the new GitHub
>> version using the
>> >>>>>>? ? ? ?following:
>> >>>>>>
>> >>>>>>? ? ? ?git clone
>> >>>>>>https://sbgraves237:mypassword at
github.com/sbgraves237/Ecdat.git
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ? ? ? ? That worked in the sense
that I got a local
>> copy. However,
>> >>>>>>? ? ? ?after
>> >>>>>>? ? ? ?I rolled the version number and did
"git commit" on
>> the DESCRIPTION
>> >>>>>>? ? ? ?files, my "git push"
command generated the following:
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ?remote: Invalid username or
password.
>> >>>>>>? ? ? ?fatal: Authentication failed for
>> >>>>>>
>> ?'https://sbgraves237:mypassword at
github.com/sbgraves237/Ecdat.git/'
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ? ? ? ? What am I missing? [Note:? I
used my actual GitHub
>> >>>>>>? ? ? ?password in
>> >>>>>>? ? ? ?place of "mypassword"
here, and this "Authentication
>> failed" message
>> >>>>>>? ? ? ?reported the GitHub password I used
here.]
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ? ? ? ? Thanks,
>> >>>>>>? ? ? ? ? ? ? Spencer
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ?p.s.? I'm doing this under
macOS Mojave 10.14.5.
>> Also,? I added
>> >>>>>>? ? ? ?".onAttach" functions to
the R-Forge versions as
>> Brian G. Peterson
>> >>>>>>? ? ? ?suggested.? That seemed to work
fine.
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ?On 2019-06-28 07:13, Duncan Murdoch
wrote:
>> >>>>>>? ? ? ?> On 28/06/2019 6:26 a.m., G?bor
Cs?rdi wrote:
>> >>>>>>? ? ? ?>
>> >>>>>>? ? ? ?>> Instead, you can do as
Duncan suggested, and put a
>> README in your
>> >>>>>>? ? ? ?>> R-Forge
>> >>>>>>? ? ? ?>> repository, that points to
*your* GitHub
>> repositor(y/ies). Then the
>> >>>>>>? ? ?
?>>https://github.com/rforge/ecdat read only mirror
>> will pick this up
>> >>>>>>? ? ? ?>> and will
>> >>>>>>? ? ? ?>> point there as well.
>> >>>>>>? ? ? ?>
>> >>>>>>? ? ? ?> Just for the record:? that was
Henrik Singmann's
>> suggestion, I just
>> >>>>>>? ? ? ?> agreed with it.
>> >>>>>>? ? ? ?>
>> >>>>>>? ? ? ?> Duncan Murdoch
>> >>>>>>? ? ? ?>
>> >>>>>>
>> >>>>>>
>> >>>>>>? ? ? ? ? ? ? ?[[alternative HTML version
deleted]]
>> >>>>>>
>> >>>>>>
?______________________________________________
>> >>>>>>R-devel at r-project.org
<mailto:R-devel at r-project.org>
>> <mailto:R-devel at r-project.org <mailto:R-devel at
r-project.org>>
>> mailing list
>>
>>>>>>https://stat.ethz.ch/mailman/listinfo/r-devel
>> >>>>>>
>> >>>>>? ? ? ? ? ?[[alternative HTML version
deleted]]
>> >>>>>
>> >>>>>
______________________________________________
>> >>>>>R-devel at r-project.org <mailto:R-devel
at r-project.org> mailing
>> list
>> >>>>>https://stat.ethz.ch/mailman/listinfo/r-devel
>> >>> ______________________________________________
>> >>>R-devel at r-project.org <mailto:R-devel at
r-project.org> mailing list
>> >>>https://stat.ethz.ch/mailman/listinfo/r-devel
>> >>
>> >>
>> >> --
>> >> Joshua Ulrich? | about.me/joshuaulrich
>> <http://about.me/joshuaulrich>
>> >> FOSS Trading? |www.fosstrading.com
<http://www.fosstrading.com>
>> >
>> >
>>
>> ______________________________________________
>> R-devel at r-project.org <mailto:R-devel at r-project.org>
mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>