介绍
介绍
前面我们学习了GitLab环境的安装部署方法,知道了Git这个版本控制软件的作用和基本使用方法。今天福哥要带着大家学习如何在Windows环境下使用Git客户端去操作我们的项目文件,这个是每一个搞技术的人员都需要学习的知识,请大家打起精神来跟着福哥一起学习吧~
今天的内容有点多,大家可以收藏起来作为Git的使用手册!
除了今天福哥教给大家的知识之外,更多的是需要大家在日常的项目开发当中熟练掌握Git的使用技巧!
环境
操作系统 | Windows 10 专业版 64位 |
Git客户端软件 | 2.41.0 |
Git服务器软件 | gitlab/gitlab-ce:12.1.3-ce.0 |
Git服务器IP | 192.168.168.68 |
Git服务器端口 | 1022 |
安装
下载
Git官网下载地址,我们下载标准安装包的64位版本。
https://git-scm.com/download/win
添加好了~
现在有三个SSH密钥了,一个是TFCentOS7x64服务器的,一个是TFCentOS7x64Node1服务器的,还有一个是福哥的Windows10的。
配置config
用来配置git相关参数,必须要设置的就是用户名称和用户email。
git config --global user.email "git-client@tongfu.net" git config --global user.name "git client"
拉取Pull/Fetch
拉取就是从git服务器上下载项目最新的文件覆盖到本地项目里的操作。
无论是pull还是fetch都要在项目根目录操作才行,所以福哥要先切换到tfphp项目根目录下面。
cd tfphp/ ls
使用add命令将css、js目录和test.htm网页添加到tfphp项目里。
git add html/css/ git add html/js/ git add html/test.htm
重置Reset
命令reset也是用来将某一次的提交所作的修改撤销掉。
reset和revert的区别在于,如果目标版本是一个历史版本,那么reset会把目标版本之后的全部版本清除掉,而revert则会保留这些版本信息。
为了测试这个,福哥就创建了几个改动。
git add html/test.htm git commit -m "add test.htm" git add html/css/test.css git commit -m "add test.css" git add html/js/test.js git commit -m "add test.js"
创建分支
因为当前是master分支,所以我们是基于master分支创建tfdev230927分支。
git branch tfdev230927 git branch
切换分支
新分支有了但是当前还是master分支,切换到tfdev230927分支。
git switch tfdev230927 git branch
合并分支
先切换到master分支,然后将tfdev230927分支合并到master分支。
因为我们在tfdev230927分支什么都没改,所以也没有什么可合并的内容。
git switch master git merge tfdev230927 --squash
删除分支
任务做完了,现在可以删除tfdev230927分支了。
删除之前先切到其他分支上,当前是不能删除的。
git switch master git branch --delete tfdev230927 git branch
提交分支
我们创建的分支其实只是在本地,如果要保存到git服务器上,还需要使用push命令提交上去。
首次提交分支到git服务器需要--set-upstream参数,后面就不用了。
福哥先创建了一个新的分支tfdev230927b,再把它提交上去。
git branch tfdev230927b git push --set-upstream origin tfdev230927b
创建标签
创建一个标签v1.0.0。
git tag v1.0.0 git tag
删除标签
删除这个标签。
git tag --delete v1.0.0 git tag
提交标签
提交标签和提交分支语法类似。
git tag v1.0.1 git tag git push origin v1.0.1
提交所有标签可以使用这个命令。再参创建两个标签v1.0.2和v1.0.3,一起提交上去。
git tag v1.0.2 git tag v1.0.3 git tag git push origin --tags
注意:删除远程标签不代表本地标签也会被删除!!!
分支和标签重名
看到这里大家可能会想,既然分支和标签推送到git服务器的语法是一样的,那么如果分支和标签有重名的情况的话,推送到git服务器的是分支还是标签呢?
这个问题福哥帮大家试验了一下,会有报错的~
git branch v1.0.3 git branch git push origin v1.0.3 git branch --delete v1.0.3
反过来也是不行的!
git tag tfdev230927b git tag git push origin tfdev230927b git tag --delete tfdev230927b
总结
今天我们学习了在Windows上安装Git客户端,已经使用Git客户端操作项目文件的的各种操作的方法。其实除了这种命令行方式的Git客户端之外,还有很多图形化的Git客户端软件,使用图形化的Git客户端可以更加高效地管理我们的git项目,管理我们的服务。
后面福哥会给大家讲解如何使用小乌龟Git(TortoiseGit)图形化Git客户端来管理我们的git项目,敬请期待~