目录
- Git的使用
- Git
Git的使用
学习资料来自廖雪峰的官方网站
简介 - Makefile教程 - 廖雪峰的官方网站
Git
// 设置用户名和邮箱
git config --global user.name "***"
git config --global user.email "***"// 使用git创建项目
// 在某个目录下创建文件
// 例如在D:\\work\\gitwork下创建一个名为hello.cpp的初始文件
// 在当前目录下执行git init
// 会自动在该目录下生成.git的隐藏文件
// 在当前目录下新建一个readme.txt 并在里面写入一些内容
// 使用git add命令将文件添加到仓库
git add readme.txt// 使用git commit命令,把文件提交到仓库
git commit -m "wrote a readme file"// 如果我们此时修改readme.txt,可以通过运行git status查看仓库当前状态
git status
// git会提示我们readme.txt被修改过了,但是还没有提交修改// 使用git diff命令可以查看修改的内容
git diff readme.txt// 使用git log命令可以查看历史记录
// git中用HEAD表示当前版本 HEAD^表示上一个版本 HEAD^^表示上上个版本 HAED~100表示前100个版本
git reset --hard HEAD^
// --hard参数 --hard会回退到上个版本的已提交状态 --soft上个版本的未提交状态 --mixed上个版本已添加但未提交状态
// 工作区与暂存区
add命令实际上是把工作区的内容放到暂存区// 撤销修改
git checkout -- readme.txt
// 该命令的意思是把readme.txt文件在工作区的修改全部撤销,有两种情况
// readme.txt自修改后还没有放到暂存区,撤销修改就回到和版本库一模一样的状态
// readme.txt已经添加到暂存区后,又做了修改,撤销修改就回到添加暂存区后的状态
// 删除文件
// 创建一个test.txt的文件,并写入一点内容
git add test.txt
git commit -m "add test.txt"// 提交后,我们在工作目录下手动删除文件
git status
// 此时git提醒我们文件已被删除
// 如果此时确定要删除文件 则执行
git rm test.txt
git commit -m "remove test.txt"// 如果不想删除,想恢复 则执行
git checkout -- test.txt
远程仓库
// 首先创建ssh连接
// 此时我们已经在本地创建了一个git仓库,接着我们在github上创建一个仓库,让这两个仓库同步// 使用github提供的ssh链接 git@github.com:Yuanyuan-BME/gitLearn.git执行下述命令
git remote add origin git@github.com:Yuanyuan-BME/gitLearn.git
// 执行后 远程库的名字就是origin// 接下来把本地所有内容推送到远程库上
// 首先创建分支,github仓库默认只有main分支
git push -u origin master
这里遇到了一点问题,出现了这样的错误
src refspec master does not match any error: failed to push some refs
解决方案:
遇到一个git的大坑 src refspec master does not match any error: failed to push some refs to_error: src refspec master does not match any error-CSDN博客
// 如果从零开发 我们可以先在git上创建一个仓库,然后把仓库clone到本地
分支管理
// 创建与合并分支
// 创建dev分支 并切换到dev分支
git checkout -b dev// 创建dev分支
git branch dev// 切换到dev分支
git checkout dev// 查看当前分支
git branch// 合并分支
git merge dev
// git merge命令用于合并制定分支到当前分支// 删除分支
git branch -d dev// 创建分支并切换到分支
git switch -c dev// 切换分支
git switch master
使用github
// 如何参与一个开源项目呢
// 1.找到一个开源项目,如bootstrap
// 2.点击fork 就在自己的账户下克隆了一个bootstrap仓库,然后,从自己的账户下clone
// 3.在本地修改后,提交修改,然后在github发起pull request,对方就可以选择是否接受你的pull request