Thanks for visiting The Cell Phone Junkie! I will be taking the time each week to discuss my favorite topic, cell phones. Any feedback is appreciated and welcome. You can email me at: questions (AT) thecellphonejunkie (DOT) com or call: 206-203-3734 Thanks and welcome!
…
continue reading
Kandungan disediakan oleh HPR Volunteer and Hacker Public Radio. Semua kandungan podcast termasuk episod, grafik dan perihalan podcast dimuat naik dan disediakan terus oleh HPR Volunteer and Hacker Public Radio atau rakan kongsi platform podcast mereka. Jika anda percaya seseorang menggunakan karya berhak cipta anda tanpa kebenaran anda, anda boleh mengikuti proses yang digariskan di sini https://ms.player.fm/legal.
Player FM - Aplikasi Podcast
Pergi ke luar talian dengan aplikasi Player FM !
Pergi ke luar talian dengan aplikasi Player FM !
HPR4342: How I use Git to blog on the web and gopherspace
MP3•Laman utama episod
Manage episode 473162887 series 108988
Kandungan disediakan oleh HPR Volunteer and Hacker Public Radio. Semua kandungan podcast termasuk episod, grafik dan perihalan podcast dimuat naik dan disediakan terus oleh HPR Volunteer and Hacker Public Radio atau rakan kongsi platform podcast mereka. Jika anda percaya seseorang menggunakan karya berhak cipta anda tanpa kebenaran anda, anda boleh mengikuti proses yang digariskan di sini https://ms.player.fm/legal.
First, I create a Git repository some place on the server. This is the Git repo that's going to be populated with your content, but it doesn't have to be in a world-viewable location on your server. Instead, you can place this anywhere, and then use a Git hook or a cronjob to copy files from it to a world-viewable directory. I don't cover that here. I refer to this location as the staging directory. Next, create a bare repository on your server. In its hooks directory, create a shell script called post-receive: #!/usr/bin/bash # while read oldrev newrev refname do BR=`git rev-parse --symbolic --abbrev-ref $refname` if [ "$BR" == "master" ]; then WEB_DIR="/my/staging/dir" export GIT_DIR="$WEB_DIR/.git" pushd $WEB_DIR > /dev/null git pull popd > /dev/null fi done Now when you push to your bare repository, you are triggering the post-receive script to run, which in turn triggers a git pull in your staging directory. Once your staging directory contains the content you want to distribute, you can copy them to live directories, or you could make your staging directory live (remember to exclude the .git directory though), or whatever you want. For gopher, I create a file listing by date using a shell script: #!/usr/bin/bash SED=/usr/bin/sed DIR_BASE=/my/live/dir DIR_LIVE=blog DIR_STAGING=staging DATE=${DATE:-`date --rfc-3339=date`} for POST in `find "$DIR_BASE"/"$DIR_STAGING" -type f -name "item.md" -exec grep -Hl "$DATE" {} ;`; do POSTDIR=`dirname "$POST"` cp "$POST" "$DIR_BASE"/"$DIR_LIVE"/`basename $POSTDIR`.txt echo -e 0Latest't'../"$DIR_LIVE"/`basename $POSTDIR`.txt > /tmp/updater.tmp echo -e 0"$DATE" `basename $POSTDIR`'t'../"$DIR_LIVE"/`basename $POSTDIR`.txt >> /tmp/updater.tmp "${SED}" -i "/0Latest/ r /tmp/updater.tmp" "$DIR_BASE"/date/gophermap "${SED}" -i '0,/0Latest/{/0Latest/d;}' "$DIR_BASE"/date/gophermap /usr/bin/rm /tmp/updater.tmp done
…
continue reading
4544 episod
MP3•Laman utama episod
Manage episode 473162887 series 108988
Kandungan disediakan oleh HPR Volunteer and Hacker Public Radio. Semua kandungan podcast termasuk episod, grafik dan perihalan podcast dimuat naik dan disediakan terus oleh HPR Volunteer and Hacker Public Radio atau rakan kongsi platform podcast mereka. Jika anda percaya seseorang menggunakan karya berhak cipta anda tanpa kebenaran anda, anda boleh mengikuti proses yang digariskan di sini https://ms.player.fm/legal.
First, I create a Git repository some place on the server. This is the Git repo that's going to be populated with your content, but it doesn't have to be in a world-viewable location on your server. Instead, you can place this anywhere, and then use a Git hook or a cronjob to copy files from it to a world-viewable directory. I don't cover that here. I refer to this location as the staging directory. Next, create a bare repository on your server. In its hooks directory, create a shell script called post-receive: #!/usr/bin/bash # while read oldrev newrev refname do BR=`git rev-parse --symbolic --abbrev-ref $refname` if [ "$BR" == "master" ]; then WEB_DIR="/my/staging/dir" export GIT_DIR="$WEB_DIR/.git" pushd $WEB_DIR > /dev/null git pull popd > /dev/null fi done Now when you push to your bare repository, you are triggering the post-receive script to run, which in turn triggers a git pull in your staging directory. Once your staging directory contains the content you want to distribute, you can copy them to live directories, or you could make your staging directory live (remember to exclude the .git directory though), or whatever you want. For gopher, I create a file listing by date using a shell script: #!/usr/bin/bash SED=/usr/bin/sed DIR_BASE=/my/live/dir DIR_LIVE=blog DIR_STAGING=staging DATE=${DATE:-`date --rfc-3339=date`} for POST in `find "$DIR_BASE"/"$DIR_STAGING" -type f -name "item.md" -exec grep -Hl "$DATE" {} ;`; do POSTDIR=`dirname "$POST"` cp "$POST" "$DIR_BASE"/"$DIR_LIVE"/`basename $POSTDIR`.txt echo -e 0Latest't'../"$DIR_LIVE"/`basename $POSTDIR`.txt > /tmp/updater.tmp echo -e 0"$DATE" `basename $POSTDIR`'t'../"$DIR_LIVE"/`basename $POSTDIR`.txt >> /tmp/updater.tmp "${SED}" -i "/0Latest/ r /tmp/updater.tmp" "$DIR_BASE"/date/gophermap "${SED}" -i '0,/0Latest/{/0Latest/d;}' "$DIR_BASE"/date/gophermap /usr/bin/rm /tmp/updater.tmp done
…
continue reading
4544 episod
All episodes
×Selamat datang ke Player FM
Player FM mengimbas laman-laman web bagi podcast berkualiti tinggi untuk anda nikmati sekarang. Ia merupakan aplikasi podcast terbaik dan berfungsi untuk Android, iPhone, dan web. Daftar untuk melaraskan langganan merentasi peranti.