git ignore and ch29, 30