在 github 上更新我的存储库

FeR*_*cHo 9 git github github-for-windows

我刚刚去github上我的计算机上本地工作的项目。一切顺利,我可以上传我的所有文件..现在我想知道如果我在本地对我的项目进行一些更改,我该如何更新我的存储库,请尝试以下命令:

git add.
git pull origin master
Run Code Online (Sandbox Code Playgroud)

我想我忘记了一些东西,或者我使用的命令不正确,正确的方法是什么?

use*_*783 12

确保在“正常”情况下将更改正确添加到远程 github 存储库的工作流程应遵循以下阶段..

(1) git status
Run Code Online (Sandbox Code Playgroud)

总是会告诉您什么是未提交的,什么需要“添加”(暂存)以提交到您的本地存储库。事实上,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"
Run Code Online (Sandbox Code Playgroud)

如果使用 Windows git-bash.exe 则在 Windows 下工作它使用 mingW64 模拟器来模拟 linux 环境。它非常擅长。

您需要提交您想要保留的任何更改 - 在本地之前您可以远程“推送”您的更改到您的 github 存储库,即只有在您告诉 git 远程 git 存储库在哪里之后...

(4) git remote add myGitHubOrBitBucketRepo https://github.com/YourGitAppRepo.git
Run Code Online (Sandbox Code Playgroud)

通常,您在 github 上的远程存储库的默认名称是“origin”。但是我一直在使用特定的别名分支名称,在您的情况下是“myGitHubOrBitBucketRepo”

(5) git push -u myGitHubOrBitBucketRepo HEAD:master
Run Code Online (Sandbox Code Playgroud)

此命令会将您提交的更改(也就是 git speak 中的快照)推送到 github.com 上的 YourGitAppRepo.git 到 master 分支上,如果您的远程 repo 上的 master 不在您的本地分支之前,并且它只是后面的几个提交- github.com 会接受这个推送

-u 与 --track 相同,这意味着位于 @ HEAD 的本地分支将跟踪远程别名 myGitHubOrBitBucketRep 处的主分支

在第 4 步和第 5 步中,您必须使用用户 ID 和密码与 GitHub.com 上的远程存储库进行交互

(6) git status
Run Code Online (Sandbox Code Playgroud)

从现在开始 git status 实际上会告诉你你是落后还是领先于你的远程 github 仓库,因为你在推送中做了 --track (ing) 选项

从现在开始使用的另一个有用的命令是

git branch -vv --all
Run Code Online (Sandbox Code Playgroud)

一个例子

$ 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
Run Code Online (Sandbox Code Playgroud)

在这里,bitbucketFrmWin 是我远程 bitbucket 存储库的别名 AsOf16Jan2018 是一个我不再感兴趣的分支 master 是我当前的主分支,我将更改从本地存储库推送到它。

--all 选项还将显示您的本地和您的“遥控器”

值得注意的是以下 * CurrAsOf18Jan2018 50d1fc6 [remotes/bitbucketFrmWin/master: 后面 5]

星号 * 是我本地分支的 HEAD 或我所在分支的提交。通常它总是在尖端或头部,即为什么它被称为“头部”

CurrAsOf18Jan2018 是我的本地主分支,重要的是它说我的本地分支已经领先于我的远程分支 5 次提交 - 它已经过时了,所以我需要用“git push”更新我的远程分支

目前这只是这个故事的一方面。如果您的远程仓库继续进行,那么另一个工作流程将是

git fetch --all && git merge --ff-only <theCommitYouWantYouToCatchUpWith>
Run Code Online (Sandbox Code Playgroud)

那完全是另一个帖子。

这是一张简洁的图片,我发现它由 Oliver Steele 提供,它显示了版本控制的基本 git 工作流程生命周期的另一个版本 另一个 Git 工作流周期由 Oliver Steele @ osteele.com 提供

希望这可以帮助。


Zin*_*Swe 12

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
Run Code Online (Sandbox Code Playgroud)