Git协作工作流指南/教程 我想做的是:
我和两个朋友一起做了一个大学项目,他们对代码做了一些修改。 我还对代码做了很多修改,其中大部分我想保留 我是git的新手,不知道从哪里开始。 我的朋友建议我使用:Git协作工作流指南/教程 我想做的是:,git,Git,我和两个朋友一起做了一个大学项目,他们对代码做了一些修改。 我还对代码做了很多修改,其中大部分我想保留 我是git的新手,不知道从哪里开始。 我的朋友建议我使用: git pull origin 当我这样做时,我得到: error: Your local changes to the following files would be overwritten by merge: Please, commit your changes or stash them before you can me
git pull origin
当我这样做时,我得到:
error: Your local changes to the following files would be overwritten by merge:
Please, commit your changes or stash them before you can merge
我在stackoverflow上读到:
如果我不将更改提交到本地存储库,它们会丢失吗
Arthur Wulf@SUPERWOLF-PC /c/Current Project/study-wise (master|MERGING)
$ git pull origin master
M .pydevproject
U src/app.yaml
M src/getters/__init__.pyc
M src/index.yaml
M src/model/ClassM.pyc
M src/model/CourseM.py
M src/model/CourseM.pyc
M src/model/GeneralM.pyc
M src/model/LectureM.py
M src/model/LectureM.pyc
M src/model/PostClassM.py
A src/model/PostClassM.pyc
M src/model/QuestionM.py
M src/model/QuestionM.pyc
M src/model/StudentM.py
M src/model/StudentM.pyc
M src/model/TopicM.py
M src/model/TopicM.pyc
M src/model/__init__.pyc
M src/setters/__init__.pyc
A src/setters/setQuestionStats.py
D src/setters/setRemoveOldData.py
A src/setters/setStartNewClass.py
A src/setters/setStudentAnswer.py
D src/setters/setTopicChanged.py
A src/setters/setUpdateTopicStats.py
M src/view/allCourses.html
M src/view/lecture.html
U src/view/prof.html
M src/view/question.html
Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>'
as appropriate to mark resolution, or use 'git commit -a'.
亚瑟Wulf@SUPERWOLF-PC/c/当前项目/研究(硕士|合并)
$git拉原点主控
M.pydevproject
U src/app.yaml
M src/getters/_init__.pyc
M src/index.yaml
M src/model/ClassM.pyc
M src/model/CourseM.py
M src/model/CourseM.pyc
M src/model/GeneralM.pyc
M src/model/tem.py
M src/model/documentem.pyc
M src/model/PostClassM.py
A src/model/PostClassM.pyc
M src/model/QuestionM.py
M src/model/QuestionM.pyc
M src/model/StudentM.py
M src/model/StudentM.pyc
M src/model/TopicM.py
M src/model/TopicM.pyc
M src/model/\uuuu init\uuuu.pyc
M src/setters/_init__.pyc
A src/setters/setQuestionStats.py
D src/setters/setRemoveOldData.py
A src/setters/setStartNewClass.py
A src/setters/setStudentAnswer.py
D src/setters/setTopicChanged.py
A src/setters/setUpdateTopicStats.py
M src/view/allCourses.html
M src/view/touch.html
U src/view/prof.html
M src/view/question.html
无法拉取,因为您有未合并的文件。
请在工作树中修复它们,然后使用“git add/rm”
根据需要标记解析,或使用“git commit-a”。
我不明白的是,如何将本地端的文件与在线原始存储库端的文件进行比较并合并?有一本很棒的在线书籍解释了git: 所以我更喜欢教钓鱼而不是教鱼
git pull origin
pull
(fetch
+merge
)从远程(源站)检索最新的,并将其与您的代码合并。如果您所在的分支有未限制的更改,则无法在新代码中合并。您可以使用以下方法检查分支状态:
git status
通常我会在本地提交
git add . //stage all files
git commit -a -m "local commit" //commit all staged
这是对本地回购的本地承诺。然后,您可以执行pull
,尝试将最近的提交与远程更改合并
pull
类似于commit
,因为pull
事件记录在回购历史记录中。它将尝试合并分支中文件上的更改(我很少看到覆盖),但正如我所说的,如提交
,事件将被记录,您可以恢复
要上载更改,可以执行推送
,其中远程
是要推送的服务器的别名,存储在GIT中,分支
是要推送的分支
git push [remote] [branch]
看到你们和GIT客户讨论过,我个人使用的是GIT for Windows。它有一个GUI和一个命令行。正确的做法是在本地提交所有更改,然后再次尝试拉取。该错误是为了保护您不丢失尚未提交的本地更改。创建提交(commit)就像创建代码的新快照,然后安全地记录该状态 回答您的问题: 1) 您如何在本地提交 查看
git status
的输出。如果有任何列为“未跟踪文件”的文件要保存在git中,请使用git add…
指示您希望在下一次提交中保存这些文件。然后查看列为“未提交的更改”的文件,这些文件是您已更改的存储库中已有的文件。您可以再次对每个文件执行git add…
,以表明您希望在准备的提交中完全使用该文件的版本。(如果对文件进行进一步修改,则必须再次添加该文件,以便为提交准备文件的新内容。)
最后,您应该运行git commit
。这将打开一个编辑器,您应该在其中输入一条有用的提交消息——当您保存该文件并退出编辑器时,应该创建提交。然后,您可以按照最初的要求运行git pull origin master
(作为一种快捷方式,如果执行git commit-a
,则存储库中已经存在的文件的所有更改都将在提交时暂存,而无需git添加它们。)
2) 我如何合并更改(有没有一种方法我可以使用超越比较请)
您尝试的git pull origin master
命令实际上做了两件事:
从名为origin
的远程存储库获取分支master
将获取的分支的状态合并到当前分支中
git擅长避免抱怨虚假冲突,但如果您确实需要帮助来处理这些冲突,请查看git mergetool
3) 如何上传更改
您可以使用git push origin master
来实现这一点,当您四处摸索时,您应该避免使用git pull
,因为它既可以执行提取操作(您需要),也可以执行合并操作(您可能不需要)
您需要与朋友聊天,了解哪些工作流最适合您-查看git教程[git help tutorial
Workson git for Windows]和git工作流[git help workflows
],当然还有(图片,尽管它可能比您需要的更高级)
关键是我