1

私はgitが初めてです。

に機能を実装しましたA way
で同じ機能を実装してみたいと思いB wayます。

B wayそれから、それが良いアイデアであったかどうかを評価するのに、おそらく時間がかかるでしょう。
評価しながら、プログラムを修正しますother parts

Suppose, I decide B was bad and A was better, and wanted to come back to A way.
But I'd like to keep the modification to the other parts of the program.

Can this be done in git?

-EDIT-
I'm adding pics to better explain what I'm trying to accomplish

Currently, I'm at the end of a_way(finished implementing A), except I don't know where X is..

                [a_way]
 o---X---a---a---a

I wanna try b_way.
Start from where I am, remove(or comment out) code related to a_way, and implement b_way

   o---X---a---a---a
                    \
                     remove a_way--implement b_way

I'll need some time to evaluate the effectiveness of b_way, and will keep developing other features.

   o---X---a---a---a
                    \
                     remove a_way--implement b_way--develop new features

Now I figure a_way was better than b_way and decide to go back to a_way.

   o---X---a---a---a--------------------------------new features(I wanna end up here)
                    \
                     remove a_way--implement b_way--new features
4

3 に答える 3

0

とが別々のブランチにあるので、とAとしましょう。保持することを決定したら、それを開発ブランチ (通常は、または)にマージします。BABAmasterdevelop

git checkout master
git merge A

そして、あなたは両方の枝を取り除きAB

git branch -d `A`
git branch -D `B`

Bは開発ブランチにマージされず、変更が失われるため、大文字で強制的に削除する必要がありますD

そしてother parts?それらはおそらくすでに開発ブランチにあり ( master、またはdevelop、または何かで述べたように)、マージした後もそこに残りますA

于 2012-12-01T00:40:24.007 に答える
0

コミットしたことはありますか?そうでない場合は、git stash最後のコミット後に行ったことを明らかにし、別の方法を試すことができます。変更が必要な場合は、使用してくださいgit stash apply

上記とは別の方法ですが、ブランチを使用する方がはるかに優れていると思います.gitは初めてなので、これを知っておくことは非常に重要です:-)

于 2012-12-01T01:57:18.487 に答える