用户:
xiaole6324查看:0 回复:3 评论:0 创建时间:2022-10-05T15:00:53
1.为什么要使用Git
想一想,你在写代码的时候,更改了一个功能,然后写炸了。写炸之后因为改动过多,删还把没问题的功能删炸了,这种情况,你气不气?Git就可以有效解决这个问题。使用了git管理代码,写炸之后只要写一段
git log
commit 25a671f3af97122260b95294982fc4a1185c1251 (HEAD -> main, tag: v1.1)
……
git reset 25a671f3af971
写炸的代码就被返回到能用的那个版本了。此外,git还可以实现远程代码仓库、分支等功能,十分方便
2. Git的安装 2.1 WindowsGit原本是不支持windows的,后来有人把它移植到了Windows平台。来到它的官网,点击Download for Windows,即可开始下载。下载不了或非常缓慢是十分正常的情况,因为Git的代码放在Github上托管,而因为一些问题(DNS污染),Github下载东西的速度是很缓慢的。下载之后开始安装,喵Next即可。
2.2 LinuxLinux发行版一般都会内置Git,如果没有,就用包管理器进行安装,不会真有人用了Linux不会用包管理器把。
2.3 Mac我没用过Mac,以下文字为复制官网的安装流程的机翻
英语好的同学直接看官网吧
Homebrew如果你还没有Homebrew,请安装它,然后
$ brew install gitMacPorts
如果您还没有MacPorts,请安装它,然后
$ sudo port install git
Xcode苹果发布了一个带有Xcode的Git二进制软件包。
3. 使用Git 3.1 配置Git安装完成后还不能直接使用,要配置你的用户名和邮箱,打开Git Bash,输入
git config --global user.name <你的名字>
git config --global user.email <你的邮箱>
如果你有Github账号,或以后注册,你的Github账号名字一样,否则会出现这样的情景
明明是自己一个人拉代码,写代码,自己的提交数量却只有两次(初始化仓库、建README),其他七次提交全部被写到git本地配置的名字上了。
config:配置
global:全面的
3.2 建仓库git建仓库有两种方法,一是init,二是clone,clone会在说远程代码仓库时讲
在一个文件夹下打开Bash,输入
git init
可以看到多了一个叫".git"的隐藏文件夹,里面存放着提交记录、更改、分支等内容,不要去更改它!
3.3 工作区、暂存区、仓库(repo) 3.3.1 工作区工作区,就是你打开的这个文件夹中除了.git外的所有地方,都称作工作区,你写代码的地方就是工作区。
3.3.2 暂存区当你在工作区的代码完成或完成一部分,在Bash中输入
git add <文件名>
可将文件存入暂存区。暂存区的代码不会进入仓库,使代码进入仓库需要把工作区的代码放入暂存区,再提交进仓库。
如果你提交了不该提交的东西,如pycache缓存文件,可以用
git rm <文件名>
将文件从暂存区删除
3.3.3 仓库前文说到过,暂存区的代码要提交才能进入仓库,
git commit -m <提交信息>
提交信息一定要写,不然不会让你提交。直接写提交会进入文本编辑器(不设置默认为vim)让你在文本编辑器里写提交信息。
4. 时光机返回正如开头所说的情景,代码写炸了可以用使用Git返回,返回有两种方式
4.1 整体返回开头所说的就是整体返回
git log
可以查看仓库提交记录,
其中“commit”后面那串乱码一样的东西是提交编码,使用
git reset <提交编码>
就可以返回到这个提交编码的提交版本
4.2 指定文件返回有时候不想一次把所有文件还原回去,就要用
git checkout HEAD <要返回的文件名>
进行返回,HEAD就是最近的一次提交。
5. 分支有时候想把代码的一部分单独来,可以多建一个repo,也可以使用
git branch <分支名字>
新建分支,单独存储要单独的代码。
查看已有分支使用
git branch
切换分支要用
git checkout <分支名>
合并分支使用
git merge <与当前分支合并的分支>
删分支
git branch -d <要删的分支>6. 标签 6.1 打标签
如果某次提交的代码是一个更新的版本,就使用
git tag -a <标签名号> -m <标签信息>
来给提交信息打标签,标签与分支类似,但原理不同。
6.2 删标签如果你打了标签的这个版本有bug,就要使用
git tag -d <标签名>
删除标签。