Read the statement by Michael Teeuw here.
How to update the master branch?
-
@PaulB First, make a backup of your install with
cp -r ~/MagicMirror ~/MM-Backup
. Then rungit stash
in~/MagicMirror
to temporarily stash your changes so thatgit
can merge all those new commits.To merge, run
git pull
to update your MM install, then usenpm install
to upgrade or install any new dependencies to the appropriate version.Once complete, run
git stash apply
to reintroduce your changes (while also keeping them in the stash) – you may need to deconflict or otherwise review these changes. You can see your changes withgit diff
.Once you’re happy and MM is running smoothly, you can
git stash drop
to get rid of the stash. You can runrm -rf ~/MM-Backup
once you’re content it’s all working as it should.Finally, I recommend you take the opportunity to also run
sudo apt-get update && sudo apt-get dist-upgrade npm && sudo dist-upgrade pm2
(I thinknodejs
should upgrade as a dependency ofnpm
but could be wrong). -
@mochman Thanks! Sorry I subposted on you; I was writing on my phone (so didn’t see your post), plus Mobile Safari really hates the compose window of NodeBB, so it takes forever to post anything decent). That and autocorrect really hates
git
andnpm
. Cheers. ;) -
Thanks guys, I have one more to upgrade. And figure out why MMM-Traffic won’t upgrade, but I think you way around would help that to.
-
cd ~/MagicMirror/modules/MMM-Traffic git pull
Restart your MagicMirror and you should be good to go. ;)
-
@ninjabreadman said in How to update the master branch?:
@PaulB First, make a backup of your install with
cp -r ~/MagicMirror ~/MM-Backup
.Noo! Not a good idea if you’re running on a RPi with small SD card. That is a huge directory:
du -sh ./
~1.3GB, already for a quite small install. You might need that space for the update itself. Never good idea to max out your SD card.Rather use
tar
, and try one of these:cd ~ # remove `v` flag to avoid huge verbose output tar --exclude={.git,node_modules} -zcvf MM_BAK.tgz ./MagicMirror tar --exclude='node_modules' --exclude='.git' -zcvf MM_BAK.tgz ./MagicMirror # This may require you to have the bash shell option globstar' set. # Check with: 'shopt -s globstar' tar --exclude='**/.git/*' --exclude='**/node_modules/*' -zcvf MM_BAK.tgz ./MagicMirror
This will avoid getting the huge node_modules and .git directories.
(You can always git init and reset your git origin url to git fetch from the resp directories if needed to re-instate.) -
if you are using mm as supposed to you only need to backup the config.js and custom.css
-
@e3v3a I take your point; in my case I’m running a reasonable size card and Raspbian/MM are all that is on the card. I do also mention to delete
MM-Backup
when they’re done. I really just wanted to give them the extra insurance of a full backup. Good call ontar
, but they then need to know how to unpack it.@strawberry-3.141 If you’re using git to stash changes, then you’ve clearly modified other files (IIRC,
config.js
and maybecustom.css
are ignored). As above, I just wanted to give extra assurance that they had a full copy if anything went totally awry. -
Hallo,
noob braucht hilfe =)
Wie kann ich bei dieser Fehlermeldung updaten?
pi@raspberrypi:~ $ cd ~/MagicMirror && git pull Aktualisiere 8010e62..60b9a5b error: Your local changes to the following files would be overwritten by merge: modules/default/calendar/calendar.js modules/default/compliments/compliments.js
-
@ninjabreadman - I tried to update accordingly your reply but i’m stranded. After
git stash
the system tells mepi@magicpi:~/MagicMirror $ git stash *** Please tell me who you are. Run git config --global user.email "you@example.com" git config --global user.name "Your Name" to set your account's default identity. Omit --global to set the identity only in this repository. fatal: unable to auto-detect email address (got 'pi@magicpi.(none)') Cannot save the current index state
I don’t know how to react on this, you?
-
@frans said in How to update the master branch?:
git config --global user.email “you@example.com”
git config --global user.name “Your Name”type those commands, add your email and name
git doesn’t allow anonymous actions