Найкращий варіант
Напевно, найчистіший, найменш заплутаний і найбезпечніший спосіб проникнути у ваше неоголене віддалене сховище - це проштовхуватися до віддалених відділень у віддаленому режимі, які представляють гілки вашого ноутбука.
Давайте розглянемо найпростіший випадок і припустимо, що у вас є лише одна гілка в кожному репо: master. Коли ви натискаєте на віддалений репо від свого ноутбука, замість того, щоб натиснути майстер -> майстер, натиснути майстер -> ноутбук-майстер (або подібне ім'я). Таким чином, поштовх не впливає на поточну перевірену головну гілку у віддаленому репо. Для цього з ноутбука команда досить проста:
git push origin master:laptop-master
Це означає, що місцева гілка-майстер буде висунута до гілки з назвою "ноутбук-майстер" у віддаленому сховищі. У вашому віддаленому РЕПО з'явиться нова гілка під назвою "ноутбук-майстер", яку ви зможете потім об'єднати у віддаленого майстра, коли будете готові.
Черговий варіант
Можна також просто натиснути master -> master, але натискання на гілку, яка зараз перевіряється, не голий репо, як правило, не рекомендується, тому що це може заплутати, якщо ви не розумієте, що відбувається. Це пояснюється тим, що натискання на відмінену гілку не оновлює дерево роботи, тому перевірка git status
в відміненій гілці, в яку було висунуто, покаже прямо протилежні відмінності, як і те, що було нещодавно висунуто. Це стане особливо заплутаним, якщо робоче дерево забруднилося до того, як було зроблено натиск, що є великою причиною, чому це не рекомендується.
Якщо ви хочете спробувати просто натиснути master -> master, то команда просто:
git push origin
Але коли ви повернетесь до віддаленого репо, ви, швидше за все, захочете зробити це, git reset --hard HEAD
щоб синхронізувати робоче дерево з вмістом, який був висунутий. Це може бути небезпечно , оскільки якщо на віддаленому робочому дереві є якісь незапущені зміни, які ви хотіли зберегти, вони видалять їх. Будьте впевнені, що знаєте, які наслідки це, перш ніж спробувати, або хоча б спершу зробіть резервну копію!
EDIT Оскільки Git 2.3, ви можете використовувати "push-to-install" git push: https://github.com/blog/1957-git-2-3-has-been-released . Але натискання на окрему гілку, а потім злиття, як правило, краще, оскільки це фактичне злиття (отже, працює з невмілими змінами так само, як відбувається злиття).