git基本操作汇集

修改刚刚commit的内容:git commit --amend

查看上传的文件信息:git log --stat

查看上传的具体信息:git log -p

退出查看页:q

查看远程仓库的详细信息:1. git remote show   2.git remote show origin [origin 为执行1时所获得结果]

在.gitignore中加入忽略无效的办法:

git rm -r --cached . # 递归删除每个文件夹下的档案

git add .

git commit -m 'update .gitignore'

git push

不再需要某一个文件时:git rm file_path; git commit -m 'del file'; git push

 

撤销git add:1. git reset HEAD(全部撤销) 2.git reset HEAD 文件(指定文件进行撤销)

 

当git pull无法获得最新代码时,是因为服务器上的代码和本地代码有冲突,这个时候需要使用git stash将本地藏匿起来,之后就可以git pull,然后git stash pop,就会展现冲突的代码。

<<<<<<<<<   服务器代码 =======  本地代码  >>>>>>>>

git stash的命令如下:

1)git stash save "save message"  : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。

2)git stash list :查看stash了哪些存储

3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}

4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p

5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}

6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

7)git stash drop stash@{$num} :丢弃stash@{$num}存储,从列表中删除这个存储

8)git stash clear :删除所有缓存的stash

参考自:https://www.cnblogs.com/zndxall/archive/2018/09/04/9586088.html

 

 

### git stash clear之后,如何恢复代码,分两步

第一步:查找历史stash数据

执行如下操作

git log --graph --oneline --decorate  $(git fsck --no-reflog | awk '/dangling commit/ {print $3}')

可以查找到历史添加到stash 中的信息已经相应编号

 

第二步:恢复数据

可以历史数据的编号,执行如下操作

    
git stash apply 你的index编号

就可以恢复代码,注意需要关闭IDE

参考:https://www.cnblogs.com/xiaopan-cp9/p/7929079.html

 

 

 

### 10 本地配置多个远程git账号

#### 10.1 生成秘钥

1. 配置用户名和邮箱

git config --global user.name "用户名"
git config --global user.email "邮箱地址"

2. 生成SSH key

ssh-keygen -t rsa -C "邮箱地址"

3. 在.ssh目录下有两个文件

最好自定义名字,将pub文件内容复制到github官网上,或自己搭建的服务器上


#### 10.2 本地配置

在.ssh下创建config文件,内容如下:
        
        #website
        Host github.com
        HostName github.com
        User asdf
        IdentityFile ~/.ssh/yeah_net_id_rsa
        
        #company
        Host code.zhuowei.com
        HostName code.zhuowei.com
        User company_account
        IdentityFile ~/.ssh/company_id_rsa

        其中User表示在网页上的id_rsa.pub内容的title,而IdentifyFile表示本地的id_rsa

 

### 11 git出现授权问题

重新执行10,一般来说是客户端和服务端的秘钥不对,既然已执行了10,说明在config中的配置存在问题。

 

 

# 设置global config

- 增
git config --global --add configName configValue
给指定的级别的指定config增加一个值
- 删
git config --global --unset configName (只针对存在唯一值的情况)

- 改
git config --global configName configValue

- 查
git config --global configName

查询指定级别下: 实际生效的配置值

【参考】

posted @ 2020-12-08 17:06  绍荣  阅读(77)  评论(0编辑  收藏  举报