- 第1步:建立本地 git 仓库,cd 到你的本地项目根目录下,执行 git init 命令
cd 本地工程根目录 git init //这个目录就变成了git可以管理的仓库
- 第2步:将本地项目工作区的所有文件添加到暂存区。小数点 “.” ,意为添加文件夹下的所有文件;也可以将 “.” 换成具体的文件名,如果想添加项目中的指定文件,那就把 “.” 改为指定文件名即可
git add .
- 第3步:将暂存区的文件提交到本地仓库
git commit -m "注释说明"
- 将本地代码仓库关联到 github 上
git remote add origin git@192.168.1.1:xxxxxxxxx.git
在这一步时如果出现错误:
fatal:remote origin already exists
那就先输入
git remote rm origin
再输入
git remote add origin git@192.168.1.167:qy52Hz/secure-aggregation.git
- 将代码由本地仓库上传到 github 远程仓库,依次执行下列语句
- 获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败):
git pull --rebase origin master //不加这句可能报错,原因是 github 中的 README.md 文件不在本地仓库中 //可以通过该命令进行代码合并
注:执行以上命令时会出现问题:fatal: couldn't find remote ref master
解决办法:
这个仓库还没有文件,空的,直接push本地修改就可以了,不需要pull了。
- 把当前分支 master 推送到远程,执行此命令后有可能会让输入用户名、密码:
git push -u origin master //执行完之后如果无错误就上传成功了,需要提示的是这里的 master 是 github 默认的分支, //如果你本地的当前分支不是 master,就用git checkout master命令切换到master分支, //如果你想用本地当前分支上传代码,则把第6步的命令里的 master 切换成你的当前分支名即可。
在gitlab版本库中发现一个问题后,你在gitlab上对它进行了在线的修改;或者你直接在gitlab上的某个库中添加readme文件或者其他什么文件,但是没有对本地库进行同步。这个时候当你再次有commit想要从本地库提交到远程的gitlab库中时就会出现push失败的问题。
知道了原因 就好解决了,直接git pull --rebase origin [你要提交的分支名称] ,然后git push 就好了,
这里git pull --rebase origin [你要提交的分支名称] 意思就是为先取消commit记录,并且把它们临时 保存为补丁(patch)(这些补丁放到”.git/rebase”目录中),之后同步远程库到本地,最后合并补丁到本地库之中