我刚刚将在我的计算机上工作的项目上传到github。一切都进行得很顺利,我可以上传所有文件。现在,如果我在本地对项目进行了一些更改,我想知道如何更新我的存储库。
请尝试以下命令:
git add.
git pull origin master
我觉得我可能忘记了什么,或者我在错误地使用命令,正确的方式是什么?
我刚刚将在我的计算机上工作的项目上传到github。一切都进行得很顺利,我可以上传所有文件。现在,如果我在本地对项目进行了一些更改,我想知道如何更新我的存储库。
请尝试以下命令:
git add.
git pull origin master
我觉得我可能忘记了什么,或者我在错误地使用命令,正确的方式是什么?
git add .
git commit -m "my changes"
git remote add origin https://github.com/zinmyoswe/React-and-Django-Ecommerce.git
git push -u origin master
在“正常”情况下,确保您的更改正确添加到远程github存储库的工作流程应遵循以下阶段..
(1) git status
Git会始终告诉您什么是未提交的,以及需要添加(暂存)哪些内容以便提交到您的本地仓库。实际上,git会提示您它认为下一步在您的工作流中是什么。
(2) git add <your_file_path_you_can_use_glob_patternsLike_asteriks>
(3) git commit -m "A Nice Subject line for many file commits <enterFromKeyboardGivesYouAnotherLine>
(a) Continue typing more comments which are detailed if necessary <anotherEnterFromKeyboard>
(b) Some more details and do not forget to put closing quote mark"
如果使用Windows git-bash.exe,可以在Windows上工作。它使用mingW64模拟器来模拟Linux环境。它在这方面表现得非常好。
在将更改“推送”到远程GitHub存储库之前,您需要在本地提交要保留的任何更改 - 也就是说,在告诉git您的远程git存储库在哪里之后......
(4) git remote add myGitHubOrBitBucketRepo https://github.com/YourGitAppRepo.git
通常在github上,您的远程仓库的默认名称为“origin”。但是我一直在使用特定的别名分支名称,而在您的情况下,它是“myGitHubOrBitBucketRepo”
(5) git push -u myGitHubOrBitBucketRepo HEAD:master
这个命令将把你已提交的更改(在 git 中被称为快照)推送到 GitHub.com 上的 YourGitAppRepo.git 的主分支上。如果你的远程仓库的主分支没有领先于你的本地分支,只是落后了几个提交 - GitHub.com 将接受这个推送。
-u 与 --track 相同,意味着你本地位于 HEAD 的分支将跟踪远程别名 myGitHubOrBitBucketRep 上的主分支。
在步骤 4 和 5 中,你将需要使用用户名和密码与 GitHub.com 上的远程仓库进行交互。
(6) git status
从现在开始,git status命令会告诉你是否落后于或领先于你的远程github仓库,这是由于你在push时使用了--track选项。
从现在开始,另一个有用的命令是:
git branch -vv --all
一个例子
$ git branch -vv --all
* CurrAsOf18Jan2018 50d1fc6 [remotes/bitbucketFrmWin/master: behind 5] Pedantic but done - gitNotes.txt
remotes/bitbucketFrmWin/master 58470cd [CurrAsOf18Jan2018] This is really crazy - Spent more than a week - Singleton still gives
这里的bitbucketFrmWin是我远程bitbucket仓库的别名。AsOf16Jan2018是一个我不再关注的分支。master是我的当前主分支,我从本地仓库将更改推送到该分支。
--all选项还会显示您的本地和“远程”
需要注意的是以下内容 * CurrAsOf18Jan2018 50d1fc6 [remotes/bitbucketFrmWin/master: behind 5]
星号*表示我的本地分支的HEAD或在该分支上的提交位置。通常它总是在顶部或头部,这就是为什么它被称为“head”的原因
CurrAsOf18Jan2018是我的本地主分支,并且重要的是它表示我的本地已经领先于远程分支5次提交——它已经过时了,所以我需要使用“git push”更新我的远程分支
目前这只是这个故事的一面。如果您的远程存储库继续前进,则另一个工作流程将是
git fetch --all && git merge --ff-only <theCommitYouWantYouToCatchUpWith>
那是完全另一篇文章。
以下是一个简明的图片,我是在Oliver Steele的帮助下找到的,它展示了版本控制的基本git工作流程生命周期的另一种版本。
希望这有所帮助。
这个答案对我有用,我认为不需要添加远程源,因为在第一次将文件推送到存储库时已经完成了。 要参考本地存储库更新git hub存储库:
git add .
git pull
git push -u origin main
git add . git commit -m "message" git push
将更改添加到暂存区 提交更改并添加提交信息 推送更改到远程仓库