"if I do~" と "if I did~" って、どう違うの?

質問. "if I do~" と "if I did~" の違いを教えて!

回答. "if I do~" と "if I did~" の違いは、単なる条件節仮定法過去かの違いです。

if I do~

"if I do~" は単なる条件節で、「もし私が~をするなら」という意味です。

"if I do~" は「これから私がやるかどうか分からないけど」という感じで、やるかやらないかが未定の状況に使用される表現です。

if I did~

"if I did~" も条件節ではありますが、それだけではなく仮定法の一種である仮定法過去でもあります。 "if I did~" は「もし仮に私が~をしたら」という意味です。

"if I did~" は「私がやらないことが(一応は)もう決まってる(決めてる)けど、仮にやるとすれば」という感じで、やらないことが(ほぼ)決まってる状況に使用される表現です。

仮定法過去は「反実仮想」と呼ばれます。「現実に反した仮の想定」ということです。 仮定法過去は名称に「過去」という言葉が入っていますが、これは動詞が過去形だからそう呼ばれているだけで、扱うのは現在の事柄です。

例文
以下に、"if I do~" と "if I did~" を比較するための例文を挙げます。
If I do it, I will be cursed.
もし私がそれをすれば、私は呪われるだろう。
# こちらの文では、「私」は「それ」をするかどうかを、まだ決めていません
If I did it, I would be cursed.
もし仮に私がそれをするとすれば、私は呪われるだろう。

# 仮定法過去です。 仮定法過去では一般的に、帰結節(主節)で "will" に代わって "would" が用いられます。

こちらの文では、「私」は「それ」をやらないことを既に(ほぼ)決心しています。 「それでも仮にそれをやったとしたら」というのが仮定法過去です。