官术网_书友最值得收藏!

Committing and pushing

Once you have staged the changes you want to commit, you can proceed with the actual commit. Committing your changes will write them to the history of your local project. Your changes are more or less cast in stone. You can commit as much as you like, but remember that a commit is only local. To actually push your work to the server so others can get it too, you must push your commits using the git push command. When you push your commits, three things can happen. First, your changes are pushed and everything is fine. Second, your changes are pushed, but others have also pushed changes to the same files resulting in a merge conflict that Git can resolve. Third, a merge conflict that Git cannot resolve requires you to manually change your files and pick between your changes or those of your coworker. In case of a merge, an extra commit will be created (on your name) that contains the merge.

Merge conflicts can be a real pain in the behind, so be sure to keep commits small and pull regularly. Whenever you do have a merge conflict, despite all your best efforts, you must edit the file manually and simply stage it when you are done. A conflict looks as follows:

<<<<<<< HEAD
These are my local changes.
=======
Remote changes.
>>>>>>> 449d9120c205609132e0983230fa48f5629dc41c

To clear that up, I literally typed These are my local changes on the same line that someone else typed Remote changes. Git cannot decide whether both lines should stay; if so, in what order; or if one should overwrite the other. Besides manually editing your conflicted files, you can also keep your own changes or the changes of them:

git checkout --ours filename
[or]
git checkout --theirs filename
git add filename

Staging your file will mark it as resolved. After all the conflicts have been resolved, you can continue your push.

主站蜘蛛池模板: 湘乡市| 武冈市| 韩城市| 景洪市| 彰化县| 静乐县| 依兰县| 宜昌市| 桂东县| 昌乐县| 图木舒克市| 合山市| 娄底市| 聊城市| 乐清市| 阜平县| 象州县| 云龙县| 深州市| 石景山区| 金塔县| 正阳县| 岗巴县| 法库县| 许昌市| 淄博市| 洛隆县| 泰来县| 长治市| 四子王旗| 吉安市| 虞城县| 乐昌市| 福泉市| 高台县| 周至县| 榆中县| 化德县| 土默特右旗| 赤峰市| 灵寿县|