git
-
版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
-
Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。
-
通过 https / ssh 协议推拉代码:
-
使用
https 协议
克隆 对初学者来说会比较方便 ,复制 https url 然后到 git Bash 里面直接用 clone 命令克隆到本地就好了,但是 每次fetch和push代码都需要输入账号和密码 ,这也是https 协议
的麻烦之处(已经不再麻烦)。idea解决了这个问题:idea自动把第一次输入的登录凭证(用户名和密码)存储起来,下一次推送/拉取代码直接使用idea存储的凭证信息。另外微软自带的 Git Credential Manager也会实现记住密码这个功能。 -
使用
SSH 协议
克隆需要在克隆之前先配置和添加好 SSH key,因此, 如果用户想要使用 SSH url 克隆的话,必须是这个仓库的拥有者 -
Git支持多种协议,包括
https
,但ssh
协议速度最快。
-
-
本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:
为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。 当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了
第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有
id_rsa
和id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:$ ssh-keygen -t rsa -C "youremail@example.com"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴
id_rsa.pub
文件的内容:点“Add Key”,你就应该看到已经添加的Key:
-
git cherry-pick
可以理解为”挑拣”提交,它会获取某一个分支的单笔提交,并作为一个新的提交引入到你当前分支上。当我们需要在本地合入其他分支的提交时,如果我们不想对整个分支进行合并,而是只想将某一次提交合入到本地当前分支上,那么就要使用git cherry-pick
了。 -
merge代码时遇到conflict,使用Accept left出现问题:将自己的(右面修改)同步到结果集中后,别点击左下角的“Accept left”,否则它会覆盖你右面修改的代码。
左下角的Accept Left 和 Accept Right其实就相当于是上一个页面的 Accept Yours 和 Accept Theirs;Accept Yours 就是直接选取本地的代码,覆盖掉远程仓库的,Accept Theirs 是直接选取远程仓库的,覆盖掉自己本地的
要点击上面的>>LEFT 将其余左面的同步过来。这里的>>left是指:apply non-conflicting changes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix