diff --git a/slapos/recipe/testnode/profile_testnode.py b/slapos/recipe/testnode/profile_testnode.py
index 050badd2d35894189d40381bf20973bfc848a2ec..a1f6de35312e5c30ac300871ccf5fa1a8e8765a3 100644
--- a/slapos/recipe/testnode/profile_testnode.py
+++ b/slapos/recipe/testnode/profile_testnode.py
@@ -126,8 +126,8 @@ def run(args):
           subprocess.check_call([config['git_binary'], 'checkout', '--force',
             '--track', '-b', config['branch'], 'origin/'+config['branch']],
             cwd=repository_clone)
-        subprocess.check_call([config['git_binary'], 'pull', '--rebase'],
-            cwd=repository_clone)
+        subprocess.check_call([config['git_binary'], 'reset', '--hard',
+          '@{upstream}'], cwd=repository_clone)
       except Exception:
         print 'Retrying git in 60s'
         time.sleep(60)