When I use Command + t to open an new tab in terminal, it always open my home directory.
How can I new a tab which open the same directory?
As of Mac OS X Lion 10.7, Terminal will do this by default if you're using bash as your shell (which is the default).
You can set preferences to decide whether to have new tabs and/or windows open at the same directory as the current terminal:
This works by having your shell (or other programs) send an escape sequence to tell Terminal the current working directory. The code to do this is in the system-wide bash configuration file /etc/bashrc.
If you're using zsh, I've adapted and expanded the code for /etc/zshrc in my answer to Resume Zsh-Terminal (OS X Lion).