( sz | 2009. 09. 03., cs – 12:44 )

Ok, aludtam rá egyet, és mostmár lehet, hogy értem, hogy mit is szeretnél csinálni. Persze az is lehet, hogy mégse, de akkor majd szólsz.

Szerintem ezt úgy kellene, hogy:

localhost$ ssh sajatszerver
# --bare, mert sajatszerveren nem akarsz worktree-t, mert egyrészt minek, másrész worktree-s repo-ba push-olás nem okos dolog
sajatszerver$ git clone --bare git://git.netfilter.org/iptables.git
sajatszerver$ cd iptables.git
# --bare nem állít be remote-ot, neked kell; a szerveren az eredeti iptables repo az origin
sajatszerver$ git remote add origin git://git.netfilter.org/iptables.git
sajatszerver$ git branch upstream
# crontab szerkesztés (;
# ez majd az eredeti iptables repo master ágát behúzza a sajatszerver repojának upstream ágába
# felteszem netfilter team nem írja át a history-t (pl. rebase, reset --hard), úgyhogy ez mindig fast-forward lesz, nem lesz konfliktus, nem kell --force
sajatszerver$ echo 'git fetch origin master:upstream' >>/etc/cron.daily/iptables_fetch
sajatszerver$ logout
# sima clone; a sajatszerver repoját automatikusan beállítja originnek
localhost$ git clone ssh://sajatszerver/iptables.git
# eltelt két nap
localhost$ cd iptables
# leszedi sajatszerver upstream-jéből az új commitokat
localhost (master)$ git fetch
localhost (master)$ git merge origin/upstream
# elküldi a merge commitot a sajatszerver master-ébe
localhost (master)$ git push

Nem tudom, hogy milyen jellegűek a változtatásaid, hogy esetleg be szeretnéd-e küldeni őket upstreamnek, stb; de lehet, hogy a localhostos merge-elés helyett rebase praktikusabb lenne...