Git archive without .gitignore

The built-in archive functionality in Git is handy. Indeed an easy way of making a clean archive of the source. Leaving all Git meta files.

However one common type of Git file will be included in the archive; .gitignore. So to tell the archiver to exclude all .gitignore files you can simply add the file .gitattributes to your repository. Then include these lines in it:

.gitignore export-ignore
.gitattributes export-ignore

As a result the export-ignore flag will tell Git to ignore all .gitignore. Additionally we should also exclude the new file .gitattributes by listing it in this file.

Finally you can make an archive of your Git repository excluding all version control system files:

git archive HEAD \
    --prefix=myproject/ \
    -o myproject.tar.gz

Github “Awesome” repositories

It’s always a hassle to look for good libraries to fit your needs. Often you want to browse the best and most maintained projects. If only someone made a list of the most relevant and updated libraries…

Github is filled with these kind of lists. They are called Awesome lists. Just search “awesome” followed by the language or environment that you are using and you’ll probably find at least one.

The are often updated weekly and many people work together to maintain them.

Here’s some I’ve been looking at: Vim, C, Pico-8, Elixir and Electron.

If you just want to check out what other kind of lists are available, this list is a list of lists.

Using the Dvorak keyboard layout

I’ve been using Dvorak for about 18 months now and it has been a pleasant experience. I’m actually not sure if I type faster then before, but I do physically move my hands less then I did before which gives a nice feel. I find Qwerty cumbersome in the way I always seemed to have my fingers “trip” over each others. This doesn’t happen with Dvorak.

Continue reading Using the Dvorak keyboard layout

Taskwarrior – Automate managment

Life is work, work is tasks.

In your head right now there is probably a list of tasks that you should have done by tomorrow, the end of the week or until your next meeting with a certain person. Not handling these tasks can lead to failure, missed opportunities and a halt in progress. So it’s up to you to make sure that tasks are completed and some tasks are done before others because they are more important.

Continue reading Taskwarrior – Automate managment