程序员的资源宝库

网站首页 > gitee 正文

git用法和配置

sanyeah 2024-03-30 12:57:20 gitee 8 ℃ 0 评论

git的用法和配置

一、git的用法

感悟:远程仓库并不能合并分支,需要git fetch拉取到本地仓库,然后在本地使用git switch或者git checkout ,转换分支,然后在本地进行分支的合并。

故因此,通常需要把分支在本地合并,然后在push到远程仓库

1. git branch的常见用法

  • git branch -v ——查看本地分支的信息
  • git branch -vv ——查看更详细,包含了本地分支与远程分支之间的跟踪关系信息
  • git branch -r ——查看远程分支
  • git brach -a ——查看所有的分支

2. git pull感悟

  • git pull 功能:从远程仓库拉取分支并合并到当前的分支下,包括两部分:git fetch和git merge。故其功能比merge要强
  • git pull主要是本地仓库和远程仓库保持同步,获取最新的代码,以便与能够git push

3. git push

  • git push 主要用于把本地仓库的代码,提交到远程仓库中
  • 有两种情况:
    1. 如果远程仓库中有本地的master分支,且是同步的(意思就是本地仓库的作用域要大于远程仓库),那么则会被添加到远程仓库的master分支下(举例是master)。如果是没有同步,也可以添加 --force来使用,强制push,但是会造成很多后果。
    2. 如果远程仓库中没有本地的dev分支,则会在远程仓库中新建一个dev分支(举例)
  • git push 到远程仓库的分支,这样表示:orgin/master、origin/dev

4. git remote

  • git remote -v 可以查看本地仓库连接了几个远程仓库
  • git remote add <remote_name> <remote_url> , remote_url可以是ssh,也可以是https

5. git merge

  • git merge 可以把branch分支合并到当前分支上

二、git的配置

1.连接gitte和github

  • ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "pohongying520@qq.com 添加密钥。

  • ssh-add -K ~/.ssh/id_rsa_github 将密钥信息存储到keychain中,永久保存;如果使用ssh-add ~/.ssh/id_rsa_github 只会将信息存储至session中,关机重启后自动清除,这时候连接ssh-T git@github.com 则会报Permission denied 的错误。

  • 如果存有多个账户的密钥,则要创建config文件:

    # Default gitHub user Self
    Host github
        HostName ssh.github.com
        User git
        IdentityFile ~/.ssh/id_rsa_github
    
    
    # gitee
    Host gitee
        HostName gitee.com
        User git
        Port 22
        IdentityFile ~/.ssh/id_rsa_gitee
    
  • 有时候连不上,可能是因为域名污染的问题,无法通过域名解析得到正确的ip地址,这时候我们往往需要更改host文件sudo vi /etc/hosts , 把github相关的域名和对应的IP绑定,最后刷新dns缓存sudo killall -HUP mDNSResponder

  • idea配置github,没有项目可以share ……project,有项目git push。使用gitee要安装插件

  1. git命令行,邮箱无实际含义,只用来做标识。
  2. 服了,ssh 连接太多,导致登录不上了。github需要git设置代理,gitee需要关掉代理,我弄了一下午,差点没把我整疯,也好,希望给以后长点教训。ssh -T git@ 用来测试ssh连接,ssh -V git@ 用来debug,@后面通常是ssh地址,也可以是htpps地址,不过要输入密码,如果ssh设置密匙有问题的话,可以考虑这个https。
  3. git remote add [自定义远程项目名] [项目地址 可以ssh和https],git push [远程项目名] [当前分支名称]:[远程分支]

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表