I. git的基本操作逻辑
II. vscode git安装
2.1 下载&安装git
Git - Downloading Packagegit-scm.com2.2 vscode
https://code.visualstudio.comcode.visualstudio.comIII. vscode+git配置
3.1 克隆云端到本地(常用)
- 在桌面打开Bash,键入
git clone https://github.com/lonelybag/Latex_lonelybag.git
% https://github.com/lonelybag/Latex_lonelybag.git是目标项目的url
- 用vscode打开项目文件夹即可
3.2 本地创建,上传云端
- git初始化
- Git 全局设置 - 打开Bash,键入
git config --global user.name "名字"
git config --global user.email "github账号"
- 键入
git remote add origin https://git.oschina.net/name/package.git
% https://git.oschina.net/name/package.git是目标项目url
IV. 常用操作
- 将选定branch融合到当前branch
git merge DWH % DWH是希望被融合的branch
- 切换branch
git checkout DWH % DWH是希望切换到的branch
- 在本地删除远端分支
git push origin --delete test % test 是远端的Branch名称
- 增加/删除 fork 的 pull request 地址
git remote add upstream A %A是目标项目的git地址
git remote rm upstream A % 删除
- 若本地出现了撤销reset,那么pull到远端需要以下指令进行强推
git push -f
- 回退版本
git reset –soft %回退,不清空暂存区,已提交的恢复到暂存区,不影响原本地文件(未提交的也不受影响)
git reset –hard %回退,清空暂存区,已提交的恢复到本地,本地的文件被恢复版本替换
git reset %回退,将暂存区的和本地已提交的全部恢复到未暂存状态,不影响原本地文件(未提交的也
不受影响)
- 执行pull时,若本地存在没有提交但也没有完成的工作,那么就需要先暂存当前工作
% 先把A项目的已经写好的代码 git add 一下
git add .
% 然后将A项目保存到暂存区
git stash
% 然后写B项目代码,写完并且commit完,准备回来开发A项目,再执行
git stash apply
% 这样就将之前开发A项目的代码从暂存区拿了出来,就可以继续A项目的开发了
- 如果不想每次同步的时候都输入账号信息,可以全局存储账号
git config --global credential.helper wincred
- 删除或者合并历史commit
git rebase [startpoint] [endpoint] --onto [branchName] %区间前开后闭
git rebase -i commitId %commitId指希望保留的commit,i指交互式界面
之后会进入编辑模式
pick: 保留该commit
reword:保留该commit,但我需要修改该commit的注释
edit: 保留该commit, 但我要停下来修改该提交(不仅仅修改注释)
squash:将该commit和前一个commit合并
fixup: 将该commit和前一个commit合并,但我不要保留该提交的注释信息
exec: 执行shell命令
drop: 丢弃该commit
键入ESC,
键入:wq,
处理冲突 ,键入:git rebase --continue 填
写新的commit
- 将master新的提交合并至自己分支
git rebase master
参考
- 多人协作
- 人类身份验证 - SegmentFault
- https://blog.csdn.net/ying422/article/details/45131079
- 带你一步一步看懂Git图谱 - 掘金
- 学点编程吧:Visual Studio Code第二弹:Vscode与Git的完美结合
- 浪晋:在VScode上配置Git
- 玄魂工作室-玄魂:Visual Studio Code 使用Git进行版本控制
- https://blog.csdn.net/u013276277/article/details/82470177
- https://blog.csdn.net/Al_assad/article/details/81145856
- 笑虎:图文详解如何利用Git+Github进行团队协作开发
关于作者
目前电气工程硕士在读,平常喜欢琢磨有限元仿真、Matlab、Latex、三维建模等一切有趣的东西
一些成果会放在 Github 或者 知乎,也欢迎通过邮箱联系我 dongweihao514@sina.com