git 问题整理

1、

2、更改git的用户名和密码

git config user.name "Your Name"

git config user.email you@example.com

3、cygwin下配置 公钥

cd .ssh (回车)
ssh-keygen.exe(回车) 
name_rsa(回车)
(回车)
(回车)

4、Git Bash下配置 公钥

ssh-keygen (回车)

将known_host.hosts  config文件放入.ssh文件夹下 改一下用户名

5、将pub添加到权限

     登录  ssh root@xxx.xxx.x.xxx  (root为用户名, xxx为服务器地址)

    SSH免登陆密码配置:
                     1.进入用户的.ssh目录:cd ~/.ssh
                     2.用ls查看是否已经有id_rsa, id_rsa.pub文件存在,如果已经存在可以新建一个backup目录,并把者两个文件移动到backup目录下区,然后下一步;如果没有直接下一步
                     3.生成私钥/公钥对,使用命令:ssh-keygen -t rsa -C "your email address"
                        3.1. 提示输入一个存法私钥/公钥对的文件名,此处直接按回车键
                        3.2. 提示输入你的私钥,注意这个和帐户登陆服务器密码是可以不一样的
                        3.3. 提示再次输入你的私钥,按回车后私钥/公钥对就会自动生成了。
                    4.生成完成以后,使用ls发现,目录下id_rsa和id_rsa.pub两个文件生成。
                    5.将id_rsa.pub文件拷贝到服务器:scp id_rsa.pub git@10.82.81.68:~/xxx_id_rsa.pub或 scp id_rsa.pub git_sx:~/xxx_id_rsa.pub
                    6.远程登陆到服务器: ssh git@10.82.81.68 或 ssh git_sx
                    7.加自己刚刚上传的公钥内容添加到你登陆帐户的.ssh/authorized_keys文件中: 
                        cat xxx_id_rsa.pub  >>  ~/.ssh/authorized_keys
                    8.退出服务器:exit
                    9.重新远程登陆服务器,发现这次我们是输自己的私钥而不是帐户在服务器上的登陆密码
           Git远程操作:
                    1.在服务器上创建一个裸版本库,
                    2.在本地创建一个版本库,完成一次提交
                    3.为本地的版本配置remote,如果git config remote add originssh://username@server_address/repo_paht
                        username@server_address 可以使用.ssh/config里面配置的别名代替
                    4.将本地版本库内容提交到远程版本库:git push -u origin master:master
                    5.从远程版本库同步代码:git pull
                    6.想远程版本库提交代码:git push
            从服务器其上clone一个版本库:git clone ssh://username@server_address/repo_path
            clone下来的版本库默认就会有一个remote的配置,不需要手动设置了。

    

6、git创建分支
查看远程分支 git branch -a //*号代表你当前工作目录所处的分支
查看本地分支 git branch
创建分支 git branch test   //分支的名字是test 
把分支推到远程分支 git push origin test
切换分支到test git checkout test
删除本地分支 git branch -d test
删除远程分支 git push origin :test

合并分支test 分支合并到master上,切换到master分支下,git merge test

7、git  pull 的时候出现

git中Please enter a commit message to explain why this merge is necessary.

Please enter a commit message to explain why this merge is necessary.

请输入提交消息来解释为什么这种合并是必要的

git 在pull或者合并分支的时候有时会遇到这个界面。可以不管(直接下面3,4步),如果要输入解释的话就需要:

1.按键盘字母 i 进入insert模式

2.修改最上面那行黄色合并信息,可以不修改

3.按键盘左上角"Esc"

4.输入":wq",注意是冒号+wq,按回车键即可

8、git clone代码的时候报错

解决办法:

git config --global http.posterBuffer 24288000

git config --list

9、git pull 报错

解决办法:

git branch --set-upstream test origin/test

其中test为分支名

10、

在branch1开发,进行多个提交,这时切换到branch2,想把之前branch1分支提交的commit都【复制】过来,怎么办?

首先切换到branch1分支,然后查看提交历史记录,也可以用sourceTree查看,也可以用命令git log

例如我的git log 如下:

commit1 xxx_id1
commit2 xxx_id2
commit3 xxx_id3

我想把 commit1 和 commit3 复制到 branch2 分支里,只需要切换到 branch2 分支,然后执行

git cherry-pick xxx_id1…xxx_id3

注意中间的两个点,表示把两个commit区间的所有commit多复制过去

单个 commit 只需要 git cherry-pick commitid

多个commit 只需要git cherry-pick

commitid1…commitid100

注意,不包含第一个 commitid , 即 git cherry-pick (commitid1…commitid100]

如果想搞成[]区间,使用 git cherry-pick A^…B 相当于[A B]包含A

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值