首页 > 其他分享 >【github】将本地项目提交到github

【github】将本地项目提交到github

时间:2022-12-02 17:33:39浏览次数:44  
标签:文件 git 本地 仓库 github 提交 file

github操作:

1. 首次提交本地项目到github

首先需要有一个github账号,之前注册了一个,但是没有怎么玩过,只是在github上下载过别人的代码,趁着周末,自己也倒腾倒腾怎么玩的,记录一下。

注册账号可以参考:如何注册一个自己的github账号

之前看过一篇博客学习了写关于git的使用,真的是超级详细的那种,遗憾的是博客地址没有保存下来,刚找了半天没找到,关于git的基础,还是先看看入门的文章,网上也比较多,找一个先知道几个常用的命令的用法才行。

然后就是提交本地的项目代码到自己的github账号之下了。

首先是登录自己的github账号,创建一个仓库,用来存放待会要上传的项目:
【github】将本地项目提交到github_github本地项目上传

【github】将本地项目提交到github_git_02
点击Create repository 会进入下面的页面,这里有两种方式可以提交代码:
【github】将本地项目提交到github_github本地项目上传_03

在你已经安装好git的电脑上,进入要上传的文件夹下,右键打开git的命令窗口:
比如我的是这里:F:\test\IDEA\github
在这个文件夹下有一个项目:Springboot-demo

我打算把这个提交到github上:
【github】将本地项目提交到github_github本地项目上传_04

再输入 " git add . ", 这个是将当前文件夹下的所有的文件添加到仓库中,如果想添加某个特定的文件,只需把’ . '换成这个特定的文件名即可。

然后使用:git status可以查看缓存区的文件(待提交的文件)
【github】将本地项目提交到github_github_05

提交到本地仓库:git commit -m “注释内容”
【github】将本地项目提交到github_github本地项目上传_06

输入 :git remote add origin https://github.com/linmengmeng-1314/LearnSpringboot1.git,需要换成自己的仓库url地址" 将本地的仓库关联到github上

最后一步,输入 "git push -u origin master ",这是把代码上传到github仓库的意思。

【github】将本地项目提交到github_github_07

在github中刚才创建的仓库页面刷新就可以看到刚刚上传的项目了:
【github】将本地项目提交到github_github本地项目上传_08

当添加新的文件,再次上传时,如果报错:

 ! [rejected]        master -> master (fetch first)

需要先更新一下本地仓库,使用git pull
然后再次添加要提交的文件,git add a.txt或者git add doc
查看:git status
添加注释:git commit -m “注释”
提交:git push(这里直接push,是因为已经将本地仓库使用master提交过了)

2. 提交之后本地仓库和远程仓库不一致

如图:
【github】将本地项目提交到github_其他_09
此时上次使用push命令提交后,输入用户名密码,提示用户名密码错误,其实是没有错的
【github】将本地项目提交到github_其他_10
按理来说,密码输入错误,不应该提交成功的,但是这里提交成功了,本地仓库使用git status查看,也不显示存在未提交内容了,而github里面确实没有新提交的内容。

然后再次使用git push 输入用户名密码,却正常提交了。
【github】将本地项目提交到github_github本地项目上传_11
可见,在使用git status并不能完全确定是否将本地代码同步到远程分支上去。如果在使用git push,输入用户名或者密码失败时,这时,git工具,会正常将文件推送到本地仓库中,但是还需要再次合并到远程仓库。

这里要补充一下git status命令的作用了:
在当前分支下修改或者新增文件之后,使用git status可以看到两类文件。

  1. 交由git工具管理的文件,即文件夹在工作区(Changes to be committed:)
  2. 暂存区状态的文件
  3. 未跟踪状态(Untracked files)

Changes to be committed:表示已经从工作区add到暂存区的file(文件或文件夹),可以通过 git restore --staged filename 命令将该file从暂存区移出,只有工作区有该文件,该文件就为Untracked files

Changes not staged for commit:表示工作区,暂时区都存在的file(文件或文件夹),在工作区进行修改或删除,但是没有add到暂存区,可以通过 git add file 命令将变更(修改,删除)的file add到暂存区,此时该file没有Changes not staged for commit状态,也就是Changes not staged for commit将没有改file的记录了。可以通过 git restore file 的命令取消在file在工作区的变更,那么暂存区的file内容还是以前的,并且file在Changes not staged for commi状态下没有记录。

Untracked files:表示只在工作区有的file(文件或文件夹),也就是在暂时区没有该file。在工作区,但是未纳入Git管理的文件,不参与版本控制。 使用git add命令即可将未跟踪文件纳入暂时区管理,移除暂存区使用:git restore --staged filename

Modified状态: 纳入跟踪的文件在工作区中被修改后就会处于Modified状态。

标签:文件,git,本地,仓库,github,提交,file
From: https://blog.51cto.com/linmengmeng/5907346

相关文章