Here's why:
* "But" is a conjunction that connects two independent clauses. While commas are often used before conjunctions, they are *not* needed when the clauses are short and simple.
* "Which" introduces a non-restrictive clause, which usually requires a comma.
* "That" introduces a restrictive clause, which generally does not require a comma.
* "However" is a conjunctive adverb, and usually requires a comma before it.
Example:
* Correct: I love dogs, but I'm allergic to them.
* Incorrect: I love dogs but I'm allergic to them.
Let me know if you'd like more examples!