赞
踩
0为必做项,1-8为主要流程,其他为辅助功能。默认读者已经已经在网站里新建了一个空项目(仓库),很简单Create a new respository,要输入Respository(即仓库或项目名),Description(描述一下仓库), 可选Public和private(私有,指定人员能见,收费的), 初始化一个readme。
告诉远程,这个文件是谁提交的。
git config --global user.name "输入你的用户名"
git config --global user.email "输入你的邮箱"
例如
git config --global user.name "zhangsan"
git config --global user.email "zhangsn@123.com"
$ git config user.name
qinsot(本地用户名)
$ git config user.email
xxx@163.com(本地邮箱)
也可以如下代码全部查看
git config --list
在想上传的文件夹下打开终端,输入
git init
这里我选择全部文件,也可以提交单个
git add .
git status
得到结果如下:
$ git status
位于分支 master
尚无提交
要提交的变更:
(使用 "git rm --cached <文件>..." 以取消暂存)
新文件: .catkin_workspace
新文件: .vscode/c_cpp_properties.json
新文件: .vscode/settings.json
新文件: build/.built_by
新文件: build/CATKIN_IGNORE
新文件: build/CMakeCache.txt
新文件: build/CMakeFiles/3.10.2/CMakeCCompiler.cmake
新文件: build/CMakeFiles/3.10.2/CMakeCXXCompiler.cmake
......
-m后边接任意字符,(建议添加,否则可能后续报错)
git commit -m "first commit"
至此,我们已经在本地完成了仓库的配置,下一步就是提交到远程。
最后的网址就是自己clone的那个git网址。
git remote add origin https://github.comxxx.git
为了便于后期的版本追溯,特地使用tag功能.本次版本设置为1.0
git tag -a 1.0 -m "1.0"
master是分支名称,也可是main等,在tag标签的隔壁,可自定义
git push -u origin master 1.0
输入6的代码后,看到如下:
$ git push -u origin master
Username for 'https://github.com': Qin-sor
Password for 'https://Qin-sor@github.com':
这一步在8.13更新后,会出现错误,原因如下:
这里的用户名还是我们的username ,但是这里的密码在8月13的改动下,就成了我们需要自己生成的一个token.
登陆github官网操作如下:
1,打开设置
2,选择左侧开发者设置(developer settings)
3.点击左侧个人令牌(personal access tokens),再点击右侧新建令牌(generate new token)
4. 对令牌的设置,note标签,可用时间这里我选择30天,下方的几个可选项我选择(repo)可以通过命令行增加,(de可以通过命令行删除)。
5. 点击生产后,界面如下:复制我们绿色框里的token。
拿到token后,填入password一栏即可传输,效果如下:
$ git push -u origin master
Username for 'https://github.com': Qin-sor
Password for 'https://Qin-sor@github.com':
对象计数中: 547, 完成.
Delta compression using up to 4 threads.
压缩对象中: 100% (492/492), 完成.
写入对象中: 100% (547/547), 712.56 KiB | 3.49 MiB/s, 完成.
Total 547 (delta 264), reused 0 (delta 0)
remote: Resolving deltas: 100% (264/264), done.
To https://github.com/Qin-sor/my_test.git
* [new branch] master -> master
分支 'master' 设置为跟踪来自 'origin' 的远程分支 'master'。
此时在我们的github中就有了我们的代码。
至此,仓库master/tag==1.0下,就有了我们的工程
开始操作同2.1.1–2.1.6,不赘述
不加版本控制直接上传,如下代码:master是分支
git push origin master
结束
git add .
git commit -m "写什么都行,最好注释"
git tag -a 2.0 -m "2.0 version"
新建一个2.0的taggit push -u origin master 2.0
提交代码到master/2.0git add .
git commit -m "写什么都行"
git branch
,看到在master 路径下接着操作,如果不在就切换到master分支git checkout master
git tag -f 2.0
命令来更新2.0 tag。这个命令会将2.0 tag指向第二步的commit,git push --tags --force
命令来强制推送更新的tag到远程仓库git checkout 2.0
git add .
和git commit -m "更新代码到 tag 2.0"
git push origin :refs/tags/2.0
git tag -fa 2.0 -m "更新代码到 tag 2.0"
和git push origin 2.0 -f
首先,在本地仓库中使用git add命令将更改的文件添加到暂存区:git add <file-name>
例如所有git add .
然后,使用git commit命令将更改的文件提交到本地仓库:git commit -m "commit message"
其中,commit message是你对此次更改的描述。
最后,使用git push命令将本地仓库中的更改推送到服务器上的仓库中:git push
git remote add origin <server>
其中,server是服务器上的仓库地址。其实就是例2.1.6可能出错情况:执行git push
报错如下:
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
git push --set-upstream origin master
命令,将本地的 master 分支推送到远程仓库,并将其设置为上游分支,这样就可以直接使用 git push 命令提交本地修改到远程 master 分支了问题2:报错如下:
error: RPC failed; HTTP 408 curl 22 The requested URL returned error: 408
fatal: the remote end hung up unexpectedly
可能是由于代理服务器不稳定,更多的原因是单个文件大于100M(github的要求),运行指令:
git config --global http.postBuffer 524288000
提升单个文件为500M。
最推荐的方式是站外缓存,最好还是LFS缓存的形式,如下:
git lfs install
安装完成后,你可以使用以下命令将这些大文件加入Git LFS追踪:
git lfs track "work/weights/*.pdparams"
此后,将这些文件提交到GitHub时,它们会被Git LFS处理。
请注意,上传到Git LFS的文件不计入GitHub的存储限制。单个文件大于50M就建议使用LFS了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。