了解git
git是什么
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper 。
git的特点
分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
下图是经典的git开发过程。
Git的功能特性:
从一般开发者的角度来看,git有以下功能:
1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。
2、在自己的机器上根据不同的开发目的,创建分支,修改代码。
3、在单机上自己创建的分支上提交代码。
4、在单机上合并分支。
5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
6、生成补丁(patch),把补丁发送给主开发者。
7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。
从主开发者的角度(假设主开发者不用开发代码)看,git有以下功能:
1、查看邮件或者通过其它方式查看一般开发者的提交状态。
2、打上补丁,解决冲突(可以自己解决,也可以要求开发者之间解决以后再重新提交,如果是开源项目,还要决定哪些补丁有用,哪些不用)。
3、向公共服务器提交结果,然后通知所有开发人员。
(内容来自百度百科)
git入门(Windows)
git下载与安装
git下载地址: click here
ps:有些网络会对下载有影响导致下载失败,如果存在下载失败的情况可以尝试不同的网络
接下来的操作都很简单,一直next到底就行啦。
安装成功
git的使用
我们要使用git,就需要有一个相应的Repository(本地库)
这里我们以 Github来操作
1.注册一个属于自己的账户密码
2.找到这个界面,点击new
.3.请给你的Repository取名,create(Add README File最好选上)
4.好了,现在,我们先把Github放在一边,打开你刚刚下载完毕的Git Bash,来,我们先来新建一个User,配置好user.name以及user.email
git config --global user.name "XX"
git config --global user.email xxxx@xx.com
5.有了User,当然密码也是不可或缺的啦,接下来,我们来获得一个独一无二的SSH
ssh-keygen -t rsa -C "xxxx@xx.com"
打开你的用户文件夹,找到以下这个文件夹,找到里面的id_rsa.pub文件,以txt形式打开,复制里面的所有内容
6.回到你的Github,点击头像,找到setting–SSH and GPG keys,给个title,将内容复制进去,完成
7.好了,接下来,就是真正的操作了
第一步
ssh -T git@github.com
第二步
cd 你的密钥名称
第三步
git init
初始化git,完成后会生成一个文件夹
第四步
git clone git@github.com:ccdreamcc/hello_world.git
克隆本地库,在.git下面会生成一个对应文件库名的文件夹
第五步
新建一个分支(可以使用git branch查看拥有的分支)
git branch newbranch
git branch
效果如图:
第六步
在分支下面操作:
//追踪你所想要操作的文件夹
git add BS
//提交到暂存区 -m"备注"
git commit -m"hello"
第七步
分支切换
git checkout main
第八步
分支合并
git merge newbranch
第九步
提交到本地库
git push -u origin main
完成结果:
在这里恭喜你,完成了最基本的git操作啦
git常规指令
git init # 初始化
git add # 将工作区的修改提交到暂存区
git commit # 将暂存区的修改提交到当前分支
git reset # 回退到某一个版本
git stash # 保存某次修改
git branch 分支 # 新建分支
git checkout 分支 # 切换
git merge 分支 # 合并分支
git pull # 从远程更新代码
git push # 将本地代码更新到远程分支上
git reflog # 查看历史命令
git status # 查看当前仓库的状态
git diff # 查看修改
git log # 查看提交历史
git revert # 回退某个修改
如果要学更多:https://www.cnblogs.com/my–sunshine/p/7093412.html
最后附上一张图,大家可以看看
第一次写博客,很多都是自己写的,可能在内容和布局上还有很多不足和可以改进的地方,希望大家可以提出来,让我加以改进,谢谢!!!