赞
踩
Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是 Linus Torvalds 为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。----来源百度
建议下载版本不要太高,会有一些未知bug,一时半会不好解决。git官网下载通道在这。
安装过程中一直点击下一步即可。
验证安装是否成功?在任意路径下右键显示git gui here和git bash here即可。(win11需要点击显示更多选项)
查看安装的git的版本,在git bash here中输入git version
即可。
git bash here简单拓展。
在git bash here中,按下鼠标滚轮是粘贴,按键盘上下是切换最近使用的命令,可以利用Tab键自动补全。
克隆命令:git clone url
(url为仓库的地址)。
ps:在clone、push、pull时可能需要输入代码托管平台的用户名和密码。clone需要在本地没有版本库的仓库下执行
其他常用命令。
注意
add时要指明文件,例如:git add 123.txt
,或者git add .
(其中"."表示所有文件及文件夹)
commit时需要写一个备注,具体为 git commit -m "备注内容"
第一次安装Git,commit时会提示下面的内容:
run
git config --global user.email "you@example.com" //不一定需要填写你的邮箱
git config --global user.name "your name" //不一定需要填写你的名字
按照上面这个要求配置一下就可以了,可以用git config --list
命令查看是否配置成功
push时需要加上远程主机名(origin)以及分支,具体为 git push origin master
(origin了解即可;这里我写的是master分支应当根据实际情况选择,后面内容还会提到分支)。
ps:如果远程仓库的代码版本高于本地仓库,则无法正常推送,需要先执行一下git pull获取最新版本,再推送即可。
git pull origin master
拉取远程仓库代码(本地已经有版本库了,拉取最新代码)
版本追溯的作用
1. 最新版本出现了严重bug,需要回到上一个版本重新开发。
2. 找回丢失的文件
3. 浏览过去的代码
远程仓库中查询历史版本(以gitee为例),如下图
本地仓库查询历史版本,命令:git reset --hard <版本号>
,其中版本号如上图
小结
1. 如果将文件commit,此文件不管以后是否删除,都可以通过版本追溯找回,所有不用担心文件丢失。
2. commit时,备注要写清楚,方便版本追溯。
3. 开发过程中,建议一天至少提交一次。
为什么要有分支?
1. 远程仓库会提供一个默认分支为master,一般master为正式版,所以一般不能在master分支上进行开发。
2. 可以创建其他分支,例如develop分支,这样开发过程中就不会给正式版本引入新bug,当develop分支测试没有问题后就可以与master分支进行merge再发布。
查看分支命令:git branch
创建分支命令:git branch 分支名
;例如git branch develop
同步分支:git push origin develop:develop
;(本地分支同步到远程分支)
切换分支:git checkout 分支名
;例如git checkout develop
;切换过后行尾发生了变换
合并分支:例如把develop分支合并到master分支的操作是在master分支下执行git merge develop
命令
在merge时,会有如下信息弹出
翻译如下
# 请输入一个提交消息来解释为什么合并是必要的,
# 特别是当它合并一个更新的上游到一个主题分支。
#
# 以“#”开头的行将被忽略,空消息将中止
# 提交。
解决办法
如果需要说明原因,则按i
进入编辑模式,修改最上面黄色字体内容,可以不修改。按esc键退出修改,再进后续操作。(如果不说明原因)按:wq
再回车即可。
配置公钥,可以免密推送,操作如下:
生成公钥:ssh-keygen -t rsa
建议在C:\Users\用户名\.ssh
目录下打开git bash here(如果没有.ssh
文件夹,可以新建一个),输入ssh-keygen -t rsa
,一直按下回车
然后会在.ssh
文件夹下生成俩个文件
打开id_rsa.pub复制内容,添加到远程仓库设置的ssh中
clone ssh协议的链接
IDEA中使用Git
自己意会吧(狗头*n!)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。