5つのローカルコミットがあるとします。そのうちの2つだけを(SVNスタイルのワークフローを使用して)一元化されたリポジトリにプッシュしたいと思います。どうすればよいですか?
これは機能しませんでした:
git checkout HEAD~3 #set head to three commits ago
git push #attempt push from that head
これで、5つのローカルコミットがすべてプッシュされます。
私は実際にコミットを元に戻すためにgit resetを実行し、次にgit stashを実行してからgit pushを実行できると思います-しかし、すでにコミットメッセージが書き込まれ、ファイルが整理されているため、やり直したくありません。
私の感じでは、プッシュまたはリセットに渡されたいくつかのフラグが機能すると思います。
それが役立つ場合は、ここに私のgit構成があります
[ramanujan:~/myrepo/.git]$cat config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = ssh://server/git/myrepo.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
master~3
。HEAD~3
またはなどの目的の「最大」コミットへの参照HEAD~~~
、または特定のSHA、またはコミットをラベル付けするタグなども同様に有効です。