了解git工具
Git简介
GIT,全称是分布式版本控制系统,git通常在编程中会用到,并且git支持分布式部署,可以有效、高速的处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
1.配置Git
本地创建ssh key
ssh -keygen -t rsa -C "Ghost145240@gmail.com"
这里我写的是自己的邮箱,写自己注册的邮箱就可以了,之后的路径和密码等一路回车即可。成功的话会在~/
下生成.ssh
文件夹,打开文件id_rsa.pub
,复制全部,回到github上,进入账户配置,选择SSH keys,添加SSH key,这里直接粘贴即可。
为了检验是否成功,在终端输入
# ghost @ LAPTOP-7J91U8JD in /mnt/d/HelloWorld [17:45:37]
$ ssh -T git@github.com
Hi Ghost100453! You've successfully authenticated, but GitHub does not provide shell access.
# 显示认证成功
设置账户和邮箱
git config --global user.name "
Ghost145240
"
git config --global user.email "
Ghost145240
@gmail.com"
2.检出仓库
将代码clone到本地
git clone git@github.com:Ghost100453/HelloWorld.git
# 不明所以的,zsh在使用git功能时会变得很卡,至今找不到解决办法
也可以clone一个本地仓库
git clone /path/to/repository
接下来就可以修改复制到本地的代码了
3.创建新仓库
# 创建新的文件夹,打开,然后执行以创建新的仓库
git init
本地仓库有git维护的三棵“树”组成,第一个是“工作目录”,它持有实际文件,第二个是“暂存区(Index)”,保存临时的改动文件,最后是“HEAD”,指向最后一次提交的结果。
4.添加和提交
向当前git仓库添加当前目录下的所有改动
git add .
# or
git add *
也可以只是添加某个文件
git add helloworld.py
提交改动信息,提交到HEAD
git commit -m "代码改动信息"
# 我自己的
git commit -m "git test"
查看git状态
git status
5.推送改动
将HEAD提交到仓库远端
git push origin master
# master代表选择的分支
如果还没有clone现有的仓库,并欲将仓库连接到某个远程服务器,可以使用如下命令添加
git remote add origin <server>
# 不过我还没有尝试
6.分支
分支是用来将特性开发绝缘开来的。创建仓库时,默认分支为master
,在其他分支上进行开发,完成后再将其合并到主分支上。
创建分支 feature_x
git checkout -b feature_x
# 推送分支的时候就是
git push origin feature_x
切换回主分支
git checkout master
删除分支
git branch -d feature_x
除非将分支推送到远端仓库,否则该分支不为他人所见
git push origin <branch>
7.更新与合并
要更新你的本地仓库至最新改动,执行:
git pull
以在你的工作目录中 获取(fetch) 并 合并(merge) 远端的改动。 要合并其他分支到你的当前分支(例如 master),执行:
git merge <branch>
在这两种情况下,git 都会尝试去自动合并改动。遗憾的是,这可能并非每次都成功,并可能出现冲突(conflicts)。 这时候就需要你修改这些文件来手动合并这些冲突(conflicts)。改完之后,你需要执行如下命令以将它们标记为合并成功:
git add <filename>
在合并改动之前,你可以使用如下命令预览差异:
git diff <source_branch> <target_branch>
Github
gay-hub
gay:快乐的、高兴的
字面意思,在这里你可以感受到真正的快乐
What is Github? GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere.
Github Guides这么介绍Github,Github可以托管各种git库,并提供一个web界面,由于Git的分支功能,使得不同的工作者可以方面的合作完成一个项目,这也使得开发者为项目贡献代码变得十分简单,只需要在自己的分支上进行特定的工作,然后通过pull request机制向负责人发送代码合并申请,不同的开发者可以为开源项目的发展贡献自己的一份力。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器