git是一个强大的分布式版本控制系统,可以在不联网的情况下工作,随时随地上传下载。
1,首先第一步是安装git,这里直接省略,因为安装很简单
2,安装完成后,你可以在你需要存放项目的目录下,使用git init创建一个仓库,这时在目录下,会出现一个git文件夹,这就是git仓库
3,仓库有了,存东西怎么存,这里使用:
git add +文件名
将文件进行打包,可以多次git add +文件名,添加你需要加入的文件,然后使用:
git commit -m +说明
commit就是司机一样,会帮你把文件送往仓库,并且会在文件上贴上你的说明
4,此时仓库已经有文件了,那么我们怎么查看仓库的状态,使用:
git status
就会返回仓库的状态信息
5,当然,如果想看自己修改的文件,那就使用:
git diff +文件名
6,修改多了,我们也想看看历史记录,那就使用:
git log
7,某天我修改错了,我需要回退到上一个版本,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上个版本就是HEAD两个箭头,比较容易数不过来,所以写成HEAD~100
git reset --hard HEAD^
回退到上一个版本
8,如果我又不想要这个版本了,那我就需要回到未来的一个版本,使用:
git reset --hard f383
这里的f383,就是你git log查看历史记录下的版本号,执行完,就发现回到了之前的版本
好,到这里,我们就知道怎么去把文件放到暂存区了,现在我们还没有把文件提交到仓库,文件还在我们电脑,只是不一样的是,我们有一个仓库去管理这些内容;
重点:git add是搬运工,commit是一个运输车,如果你不把东西搬到commit,那commit直接送去的就是空的
9,当然,如果我们想要撤销本次修改,也可以使用:
git checkout – file
10,如果我想删除一个提交文件,可以用使用:
git rm +文件名, 撤回删除使用:git checkout – +文件名
11,开始链接远程仓库,这里的远程仓库我连接的是码云,连接方法如下:
登录后创建仓库,进入仓库后,你就会发现一个橙色的克隆按钮,点击就会出现https的链接,这就是你连接远程仓库的仓库地址
点击个人主页,点击有一个“设置”选项,进入后左侧有一个SSH公匙,点开后可以看到有一个标题和一个公匙输入框,然后回到cmd,输入下面代码
ssh-keygen -t ed25519 -C “xxxxx@xxxxx.com” //生成sshkey,3次回车
cat ~/.ssh/id_ed25519.pub //输入此代码查看sshkey,然后复制到公匙就可以连接,这里就算是设置完成了
回到你的cmd,输入以下两段代码,生成你的名字和邮箱,方便仓库识别
git config --global user.name “你的名字” //这个可以自己生成
git config --global user.email “你的邮箱” //输入你的邮箱
git remote add origin “你的复制的链接”
12,连接成功后,将数据推送到远程库:
git push -u origin master
13,既然有上传,那肯定就有下载,下载就是克隆:
git clone +仓库地址链接
熟悉以上命令,你就可以将独立去完成上传你的代码了,但是团队中,每个人的代码进度不一样,如果都只上传一半,那没办互相协作,这里我们就需要在一个仓库有自己的独立小空间,只是自己的代码,等我写好了,再一起整合到大空间,下面学习分支(也就是小空间创建)
14,创建分支,使用:
git checkout -b dev
15,查看分支,当前分支前面会有一个*号,使用:
git branch dev //查看指定分支
git branch //查看所有分支
16,切换分支,有几种,都可以使用:
git checkout +分支名
git switch -c dev //创建并切换分支到dev
git switch master //直接切换到master分支
17,合并当前分支到主分支,使用:
git merge dev
18,删除分支,使用:
git branch -d dev
19,打标签,使用:
git tag v1.0
20,查看所有标签,使用:
git tag
21,查看标签信息,使用:
git show v0.9
22,推送标签到远程,使用:
git push origin v1.0
23,推送全部标签,使用:
git push origin --tags
24,删除远程标签,先删除本地,再删除远程,使用:
git tag -d v0.9
git push origin :refs/tags/v0.9
25,error: failed to push some refs to 'https://github.com/…
出现这个错误,使用:
git pull --rebase origin master
该命令的意思是把远程库中的更新合并到(pull=fetch+merge)本地库中,–-rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。出现如下图执行pull执行成功后,可以成功执行git push origin master操作