9

次のメッセージが表示されます。

Cannot pull with rebase: You have unstaged changes.
Please commit or stash them.

はい、コミットされていない変更があります。プルから取得する新しいコードの上に、コミットされていない変更をリベースする方法を探しました。

私はこれを見つけました: https://github.com/aanand/git-up

これがまだ進むべき道なのか、それとももっと現代的な方法があるのか​​知りたいです。

私はgitバージョン1.8.1を使用しています

4

4 に答える 4

9

git-upはおそらく、この問題を解決するためのより洗練された方法です。
それ以外の場合は、スタッシュ、リベース、スタッシュ ポップが必要です。

「より現代的な方法」は、git 1.8.5 (または 1.9、2013 年第 4 四半期) で利用可能になります。「 Git - 現在のインデックス (現在の状態) からステージングされていない変更の一部を使用して、古い (以前ではない) コミットを編集する方法
」で言及したように:

" " 実行を拒否する代わりにローカルの変更を保存するオプションをgit rebase学び--[no-]autostashました (人々の通常の反応は、それらを隠して再実行することでした)。


Git 2.9 (2016 年 6 月) 以降、( artofwarfareのコメントによると):

git pull --rebase --autostash
于 2013-09-17T14:20:27.423 に答える
5

コミットされていない変更を実際に「リベース」することはできません。実行する前にローカルの変更を隠してgit pull --rebaseから適用する必要があります。

于 2013-09-17T14:21:08.553 に答える
4

git-up の Python ポートを使用できます: https://github.com/msiemens/PyGitUp

pip install git-up
于 2013-09-18T07:14:15.463 に答える