【git基础】项目同步操作
git本地项目快速push到远程仓库
·
系列综述:
💞目的:本系列是个人整理为了学习git实践操作的,整理期间苛求每个知识点,平衡理解简易度与深入程度。
🥰来源:材料主要源于–个人实践–进行的,每个知识点的修正和深入主要参考各平台大佬的文章,其中也可能含有少量的个人实验自证。
🤭结语:如果有帮到你的地方,就点个赞和关注一下呗,谢谢🎈🎄🌷!!!
请先收藏!!!,后续继续完善和扩充👍(●’◡’●)
文章目录
一、Git的基本操作
在远程代码仓库中新建项目
前提:git已经安装,并与账号完成密钥绑定
- 在github上创建一个新仓库


在本地初始化git项目
- 在项目文件夹下,右击选择
git bash here,打开一个终端对话框
git init(在项目目录下出现隐藏的.git文件夹,目的是把该项目文件夹变成git可管理的仓库)git status(查看当前状态,多用该命令防止出错)git add .(或 git add 文件名 )将项目中的所有文件添加到仓库中git commit -m "注释"(把项目提交到仓库)若出现please tell me who you are…
按提示依次执行即可,如:
git config --global user.email “你的账号@qq.com”
git config --global user.name “你的昵称”- 将本地的仓库关联到GitHub上:
git remote add origin git@xxxx- 优先使用ssh链接,不行再用https
- 查看仓库中的主分支名称(一般为main)和本地的主分支(一般为master),如果不同则使用命令
git branch -m main切换本地主分支名称与远程仓库一致 - 报错fatal: remote origin already exists.则先使用该命令删除:
git remote rm origin
- 强制把远程仓库的代码跟新到当前分支上面:
git pull --rebase origin master - 将本地代码推送到指定远程的仓库中:
git push -u origin main
二、项目同步操作
初次拉取远程项目到本地
如果需要长期和远程进行交互的项目,最好使用拉取ssh方式,而不是http方式的项目,才能进行免密交互
git clone 【项目ssh地址】:将远程项目克隆到本地cd 【项目名】:进入项目根目录- 进行代码开发工作
- 将项目推送到远程的自动化脚本
#!/bin/bash echo "请输入提交信息:" read message git add . git commit -m "$message" git push origin master echo "提交成功!"
强制同步远程项目到本地
- git强制和远程仓库保持一致,强制用远程仓库覆盖本地代码
git fetch --all //从另一个存储库下载对象和引用 git reset --hard origin/master //放弃本地修改 git pull //开始更新
push本地已有项目到远程
- 在远程代码仓库中新建一个空项目
git clone 【项目ssh地址】:将远程空项目拉取到本地,默认会建立链接- 将本地项目复制到本地拉取的项目目录中
- 将项目推送到远程的自动化脚本
#!/bin/bash echo "请输入提交信息:" read message git add . git commit -m "$message" git push origin master echo "提交成功!"
如何拉取新项目后进行分支的开发和提交
- 要拉取 master 分支并在你的开发分支上进行 rebase
# 克隆仓库到本地
git clone <远程ssh仓库链接/https仓库链接>
# 在master分支创建新分支,并切换到该分支上
git checkout -b <your-dev-branch>
# 修改分支中的源码文件...
doing
# 查看更改状态
git status
# 将变更提交到暂存区
git add .
# 将更改持久化到git仓库,并创建一个新的提交对象
git commit -m "远程仓库指定的校验格式"
# push到远程分支上
git push
远程平台代码评审通过但无法合并
- 原因:可能master发生更改,需要更新master
# 切换到 master 分支
git checkout master
# 拉取最新的 master 分支代码
git pull
# 切换回你的开发分支
git checkout <your-dev-branch>
# 在开发分支上进行 rebase
git rebase master
# 修改分支的源代码文件
doing
# 查看更改状态
git status
# 将变更提交到暂存区
git add .
# 更改最近提交记录
git commit --amend
# 忽略分支历史记录并覆盖
git push -f origin <your-dev-branch>
将远程master更新合并到本地分支中
# 切换到 master 分支
git checkout master
# 拉取最新的 master 分支代码
git pull
# 切换回你的开发分支
git checkout <your-dev-branch>
# 将master合并到工作分支
git merge master
# 手动编辑解决冲突
doing
# 查看更改状态
git status
# 将变更提交到暂存区
git add .
# 更改最近提交记录
git commit -m "Merge master into my-feature-branch"
# 忽略分支历史记录并覆盖
git push
切换到指定分支
# 查看所有分支,* 号表示当前分支
git branch -a
# 本地创建一个指定名称的分支,并与远程的origin/远程开发分支关联
git checkout -b <本地分支名称> <origin/远程开发分支>
# 查看本地分支及追踪的分支
git branch -vv
# 将当前本地分支与远程分支关联,从而可以直接进行拉取和推送
git branch --set-upstream-to=<远程分支名称>
将本地分支代码推送到远程对应分支
git pull origin dev
git push origin dev_llamafactory_wangs516:dev
基于最新的指定远程分支创建本地分支
- 查看所有分支名称:
git branch -r - 拉取并合并指定远程分支代码到本地
git pull origin [远程分支名]
- 创建并切换到新的本地分支,同时关联到指定的远程分支
git checkout -b local/[本地分支名称] origin/[远程分支名称]
- 查看是否正常
git status
将本地分支合并到目标分支并提交
# 1.切换到本地目标分支并更新
git switch 【本地的目标分支】
git pull
# 2. 合并本地其他分支
git merge 【本地要合并的分支,可用git branch -a查看】
# 3. 提交到远程目标分支
git add .
git commit -m "xxx"
git push
二、Git的使用
回退git版本
- 查看版本信息:
git log,然后按q退出 - 版本回滚
git reset --hard <commit-hash>:回滚到指定版本,并且不保留该版本之后的提交历史git checkout <commit-hash>:会切换到指定版本,但是不会改变提交历史
git commit信息
- 项目是否能运行,这是一个重要的点
三、其他
VS2022git如何推送
- 先提交后推送
- 只提交只是在本地更改
- 只同步只是远程和本地进行比较,如果相同则不进行推送

参考博客
更多推荐
所有评论(0)