git

获取公钥:
1、先执行以下语句来判断是否已经存在本地公钥: 
cat ~/.ssh/id_rsa.pub 
2、如果你看到一长串以 ssh-rsa或 ssh-dsa开头的字符串, 你可以跳过 ssh-keygen的步骤。否则 
你可以按如下命令来生成ssh key: 
ssh-keygen -t rsa -C “835570372@qq.com” 
3、这个指令会要求你提供一个位置和文件名去存放键值对和密码,你可以点击Enter键去使用默认值。 
用以下命令获取你生成的公钥: 
cat ~/.ssh/id_rsa.pub


1. ignore
   定义忽略规则,忽略不需要提交的文件
2. external diff tool
   用第三方工具对比修改内容
3. discard charge  
   丢弃修改内容
4. file blame
   查看文件每行是谁修改的
5. master指向的分支是主分支
   head指向的是当前分支
   每次提交,master分支都会向前移动一步

   节点1 ---  节点2 ---- 节点3                 
                            <-- master <-- head 
6. 工作区(workspace): 
   就是电脑里能看到的目录,即你代码放的那个文件夹。
   及时性强,对文件的所有更改都会立刻体现在这里。
8. 暂存区(index/stage): 
   git add后,当前对文件的更改会保存到这个区。
9. 本地仓库repository(也叫版本库、仓库区): 
   git commit后,当前暂存区里对文件的更改会提交到本地仓库。
   push的时候,就是把本地仓库的数据push到远程仓库
   这里有提交的所有版本的数据。
   工作区有一个隐藏目录.git, 这个不算工作区,而是git的版本库
10. 远程仓库remote(遥远的;远程):远程仓库名一般叫origin.
    git push以后,本地仓库里优先于远程仓库的commit会被push到远程仓库

Workspace---(add)---Index---(commit)---Respository---(push)---Remote
 工作区             暂存区                本地仓库             远程仓库

注:本地仓库和远程仓库要一一对应 
例如:local: 仓库1 master(主干); 仓库2 dev(分支) 
      remote: 仓库1 master(主干); 仓库2 dev(分支)
 

11. 创建一个空仓库
    mkdir test
    cd test
    git init   //Initialized empty Git repository in /Users/tianqixin/www/runoob/.git/
11. git clone https://github.com/geyujiao/k8s1.git
    git config --global user.name "abc"
    git config --global user.email "123@qq.com"
    提交新文件 git add file1 file2
               git commit -m "add files"
               git push 
    拉取代码:git pull
    删除文件:git rm -r 文件名
11. git config -l 
    git config --list 
    查看配置
11. git diff 
    查看修改内容
11. git add
    将修改添加到暂存区
12. git commit 
    修改同步到版本库
11. git pull
    获取远程服务器上的代码,并立即合并到你的本地仓库。
    默认支持fetch(获取)和merge(合并)的操作。
    git pull = git fetch + git merge
12. git fetch (fetch:获取)
    是指获取远程代码,然后创建一个本地copy,你不应该直接对这个copy做任何的操作,
    而应该创建一个本地分支,然后在本地分支上进行工作。
13. git clone(从无到有,完全复制copy)
    会为它被克隆的远程repo创建一个名为"orign"的local repo,
    并为远程repo的活动分支创建一个本地分支以及远程跟踪分支。
14. git rebase
    你对当前分支所做的任何改变都被保存到一个临时区域,
    因此你的分支将会和改变之前一样干净。
    如果你用git pull -rebase,git将会获取远程的改变,
    遍历当前本地分支,然后替换你当前分支的所有改动。
15. finally
    使用git branch -a,它会显示本地仓库的所有分支:本地的,远程的。
16. git status 
    查看在你上次提交后是否有修改。
    git status -s  //简短的结果输出,不加-s 详细输出
17. fork 一个仓库 (fork 分叉)
    fork就是复制一个代码仓库,fork一个代码仓库之后,你就可以任意的尝试
    去修改代码,而不会影响到源项目。
18. git reset (慎用:容易删除别人代码)
    作用:修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本。
    reset后,目标版本之后的版本不见了。代码丢失不会保存,不会有痕迹。
    适用场景:如果想恢复到之前某个提交的版本,且那个版本之后提交的版本我们都不要了,就可用这方法。
    操作:
    git log  //查看版本号
    git reset --hard 目标版本号  //将版本回退
    git push -f 
    //强制提交修改。如果用git push会报错,因为我们本地库HEAD指向的版本比远程库的要旧。
19. git revert (慎用:容易删除别人代码)
    作用:通过反做创建一个新的版本,这个版本的内容与我们要回退到的目标版本一样,
    但是HEAD指针是指向这个新生成的版本,而不是目标版本。    
    适用场景:如果我们想恢复之前的某一版本(该版本不是merge类型),但是又想保留该
    目标版本后面的版本,记录下这整个版本变动流程,就可用这方法。

    git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
    git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
    git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容
    操作:
    git log //查看版本号
    git revert -n 版本号
    git commit -m "日志"
    git push

20. git branch 
    查看本地分支
21. git branch -r 
    查看远程分支
22. git branch -a
    查看本地和远程所有分支
23. git checkout -b 新分支名 origin/已有的分支名
    git checkout -b 新分支名   //默认checkout origin/master
24. git checkout 分支名称(dev或者master)
    切换到已有分支
25. git branch -d 分支
    删除已有分支
26. git branch -D 分支
    强制删除已有分支
27. 分支合并???????????

问题:
1. You do not have permission to pull from the repository via HTTPS
   法1: 控制面板-用户账户-凭据管理器-windows凭据-普通凭据 修改git账号信息
   法2:修改git配置文件
        vim gopath/src/项目名/.git/config
        [remote "origin"]
        url = https://qianxiaoanran:08280644GEyujiao@gitee.com/banyan_tree_in_beijing/cwi_activity.git
        fetch = +refs/heads/*:refs/remotes/origin/*                         */
2. 用户名密码错误
   git config --system --unset credential.helper //执行此命令会在git push时候输入用户名和密码
3. 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值