Tôi hiện đang làm việc trên một dự án và sử dụng máy ở hai vị trí khác nhau để thực hiện. Tôi đã tạo một chi nhánh cho tính năng mà tôi đang làm việc và khi tôi hoàn thành một số công việc, tôi sửa đổi cam kết của mình với nhánh đó và đẩy nó vào máy chủ để tôi có thể tiếp tục từ nơi tôi đã dừng lại trên máy khác của mình.Git: đẩy các cam kết đã sửa đổi
Khi tôi cố gắng gửi cam kết đã sửa đổi của mình, nó từ chối sự thúc đẩy của tôi. Tôi cho rằng điều này là bởi vì tôi đang thúc đẩy một cam kết được dùng để che dấu HEAD hiện tại của nhánh tính năng. Tôi thường chỉ sử dụng --force.
Có cách nào tốt hơn để thực hiện việc này không?
[email protected]:~/projects/myproject$ git pull origin topx
From heroku.com:myproject
* branch topx -> FETCH_HEAD
Already up-to-date.
[email protected]:~/projects/myproject$ git add app/models/reward.rb
[email protected]:~/projects/myproject$ git commit --amend
[topx 82a9880] Added topX reward
9 files changed, 106 insertions(+), 21 deletions(-)
rewrite app/views/ceo/_reward_criteria.html.erb (96%)
create mode 100644 public/javascripts/jquery.multiselect.min.js
create mode 100644 public/site/javascripts/jquery.multiselect.min.js
create mode 100644 public/stylesheets/jquery.multiselect.css
[email protected]:~/projects/myproject$ git push origin topx
To [email protected]:myproject.git
! [rejected] topx -> topx (non-fast-forward)
error: failed to push some refs to '[email protected]:myproject.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes before pushing again. See the 'Note about
fast-forwards' section of 'git push --help' for details.
Tôi đủ điều kiện tùy chọn "không sử dụng sửa đổi": không sử dụng tùy chọn này trên công việc đã xuất bản. Trên công việc chưa được xuất bản (các nhánh địa phương/cá nhân), bạn hoàn toàn nên sử dụng nó. (Và nếu bạn có nhiều hơn một repo cá nhân, điều đó có nghĩa là bạn sẽ sử dụng 'push - force' để chuyển công việc của bạn xung quanh đôi khi. Đó là tốt.) – Cascabel
Cảm ơn rất nhiều cho điều đó! Bây giờ tôi có thể giữ mã của tôi an toàn và các bản ghi cam kết sạch sẽ. –