前言:这里提交修改仅针对个人Github仓库。只有使用过程,不包含技术细节。本人也是刚学,欢迎大佬们交流指正。
前序知识
git是一种分布式开源版本控制系统,它有本地仓库和远程仓库,远程仓库可以和Github的仓库(Repositories)进行链接。远程仓库可以和Github的仓库(Repositories)链接后,提交代码时,在本地修改完代码后,使用git commit将修改提交到本地仓库中,然后再用git push将本地仓库的修改推送到远程仓库,这里即Github仓库,也就修改了Github里看到的项目内容。拉取Github里修改后的代码到本地仓库时,使用git pull即可。下面详细介绍该过程。
准备工作:安装git
这里直接使用命令行安装:
sudo apt install git
使用
git --version
查看git是否安装成功
方法一、直接使用git clone拉取已有项目(推荐)
- 在文件夹下使用git clone 仓库链接拉取代码 以我的Github一个测试项目举例,复制该链接 然后在准备存放该项目的文件夹路径下: 此时,目录下就有了该项目的文件夹,进入后就能看到所有的项目文件
- 上传本地修改后的代码到Github 现在假设在本地仓库下修改了README.md文件,且新增一个test.cpp文件,此时可以使用
git status
查看本地仓库当前的文件更改情况: 可以看到提示,test.cpp未跟踪,跟踪指的是Git 正在监视和追踪的文件或目录,这意味着 Git 会检测这些文件的更改并记录它们。因此必须添加跟踪才能提交修改。 使用git add 文件名
添加跟踪。如图输入git add test.cpp
后,查看git status,发现test.cpp文件已被暂存并等待commit。 同时,已跟踪但被修改了的文件,也必须git add 暂存更改才能提交。 - 提交修改到本地仓库 使用命令
git commit -m "提交说明"
来提交到本地仓库。“提交说明”就是对此次提交的一个描述,自己写。提示以下类似内容,表示commit成功。 - 将本地仓库的修改同步到远程仓库 使用
git push -u origin <branch-name>
将本地分支的提交推送到名为 origin 的远程存储库上的 分支。这是最常见的用法,其中 是本地分支的名称。 在第一次推送分支时,使用 -u 或 --set-upstream 参数将本地分支与远程分支关联。这将使 Git 自动跟踪远程分支,以便在以后的 git pull 和 git push 中不必指定远程和分支名称。 输入git push指令后会让输入Github用户名以及密码的步骤,这里的密码不能使用Github的登录密码,而是使用一个在Github网站上生成的密钥。 生成步骤为:在自己的Github页面,进入setting—>Developer settings—>Personal access tokens—>Tokens(classic) Note随便填,通常为“login”。Expiration为有效期,到期后需重新生成Token,Select scopes选择repo,然后点击“Generate token”,得到Token后记得保存下来,在有效期内都有效。 有了token后,该token就是push时的password,成功push提示如下。此时查看Github的项目已经发生了修改。 - 拉取远程仓库的修改到本地仓库 现在直接在Github网页上修改README.md文件,并把修改拉取到本地仓库。 修改如下: 使用
git pull 远程仓库名 远程仓库分支名
,用于从远程存储库拉取更新并合并到当前分支。它相当于运行git fetch
来获取远程更新,然后运行git merge
来合并这些更新到当前分支。这里因为git push使用了-u,因此不用再指定远程仓库名、分支名。 此时可见本地README.md文件已被修改。
方法二、本地手动完成仓库初始化、连接远程仓库
- git init本地仓库 在保存项目的文件夹下使用
git init
创建一个本地仓库,如下图: - 创建远程仓库 使用
git remote add 远程仓库名 仓库链接
创建一个远程仓库,远程仓库名通常为"origin"。使用git remote 查看远程仓库。 - 如方法一使用 现在使用方法跟方法一一致了。 拉取仓库: 推送更改:
版权归原作者 正版dongbaba 所有, 如有侵权,请联系我们删除。