[Git][远程操作]详细讲解
1.理解分布式版本控制系统
形象理解 :每个⼈的电脑上都是⼀个完整的版本库 这样⼯作的时候,就不需要联⽹了, 因为版本库就在⾃⼰的电脑上 既然每个⼈电脑上都有⼀个完整的版本库,那多个⼈如何协作呢? 例如 :在⾃⼰电脑上改了⽂件A,同事也在他的电脑上改了⽂件A,这时,两个人之间只需把各⾃的修改推送给对⽅,就可以互相看到对⽅的修改了 分布式版本控制系统的安全性要⾼很多 ,因为每个⼈电脑⾥都有完整的版本库,某⼀个⼈的电脑坏掉了不要紧,随便从其他⼈那⾥复制⼀份就可以了在实际使⽤分布式版本控制系统的时候,其实很少在两⼈之间的电脑上推送版本库的修改 因为可能俩人不在⼀个局域⽹内,两台电脑互相访问不了,也可能今天同事病了,他的电脑压根没有开机 因此,分布式版本控制系统通常也有⼀台充当“中央服务器”的电脑 但这个服务器的作⽤仅仅是⽤来⽅便“交换”⼤家的修改,没有它⼤家也⼀样⼲活,只是交换修改不⽅便⽽已 有了这个“中央服务器”的电脑,这样就不怕本地出现什么故障了
2.克隆远程仓库
克隆/下载远端仓库到本地 :git clone repositry_uri
SSH协议和HTTPS协议是Git最常使用的两种数据传输协议 SSH协议使⽤了公钥加密和公钥登陆机制,体现了其实⽤性和安全性 使⽤此协议需要将自己的公钥放上服务器,由Git服务器进⾏管理 使⽤HTTPS⽅式时,没有要求,可以直接克隆下来 如何使用SSH方式克隆仓库呢? 前置检查 :在⽤⼾主⽬录下,看看有没有.ssh
⽬录 如果有,再看看这个⽬录下有没有id_rsa
和id_rsa.pub
这两个⽂件 如果已经有了,可直接跳到下⼀步 如果没有,需要创建SSHKey 如果没有需要先手动创建出该目录mkdir ~/.ssh
创建SSH KEY :ssh-keygen -t rsa -C "email"
,配置一路默认即可 创建完成后,可以在用户主目录里的.ssh
文件夹内找到id_rsa
和id_rsa.pub
,这两个就是SSH KEY的密钥对 id_rsa
是私钥,不能泄露出去id_rsa.pub
是公钥,可以放心地告诉任何人 添加公钥至远端仓库 :cat id_rsa.pub
获取公钥内容,原封不动复制到远端仓库的SSH公钥部分即可至此,已经可以成功在本地用SSH方式克隆仓库了 注意 :SSH协议每次推送是不用输入密码的,但如果是HTTPS协议,每次推送都必须输入密码 从远程仓库克隆后,实际上Git会⾃动把本地的master
分⽀和远程的master
分⽀对应起来 远程仓库的默认名称是origin
,本地可以使⽤git remote
命令,来查看远程库的信息 git remove -v
可以显示更详细的信息
3.向远程仓库推送
前提 :在本地仓库配置了和远端仓库一样的用户名和邮箱将本地仓库的内容推送至远端仓库 :git push
详细命令格式 :git push <远程主机名> <本地分支名>:<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号 :git push <远程主机名> <本地分支名>
4.拉取远程仓库
如果远程仓库是要领先于本地仓库⼀个版本,为了使本地仓库保持最新的版本,需要拉取下远端代码,并合并到本地 从远程获取代码并合并 本地的版本 :git pull
详细命令格式 :git pull <远程主机名> <远程分支名>:<本地分支名>
如果远程分支名与本地分支名相同,则可以省略冒号 :git push <远程主机名> <远程分支名>
5.配置 Git
1.忽略特殊文件
2.给命令配置别名
Git支持对命令进行简化 :git config [--global] alias.<别名> <被别名替换的命令>
被别名替换的命令中,如果含有空格,可以使用双引号(""
)括起来 --global
参数为全局参数,即设置后在任意一个仓库都可使用设置的别名 如果不添加--global
参数,只能在该仓库内使用设置的别名 示例 :$ git config --global alias.st status
$ git st
On branch main
Your branch is up to date with 'origin/main' . nothing to commit, working tree clean$ git config --global alias.lpa "log --pretty=oneline --abbrev-commit"
$ git lpa
33d983d ( HEAD -> main, origin/main) Done gitignore
8c28641 test .gitignore
b0f37ed Update from Github
6570136 First Commit
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/391637.html
如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!