git笔记

作者: 清风明月夜满楼 | 来源:发表于2019-03-25 17:52 被阅读0次

    git攻略


    1. 参考文献

    CentOS 7下搭建 Git 服务器

    可视化GitHub配置文件的工具

    Git安装包下载

    Git学习沙盒

    2. 服务端

    2.1 安装服务

    # 下载
    wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.16.3.tar.gz
    # 解压文件
    tar -xvf git-2.16.3.tar.gz  
    # make configure 检测git是否安装
    ./configure --prefix=/usr/local/git
    # make 安装 
    make install
    

    2.2 添加用户

    # 服务器创建git用户组
    groupadd git
    # 创建git用户组下git用户
    useradd git -g git
    # 设置密码
    passwd gitgitmose
    

    2.3 打开 密钥验证

    vi /etc/ssh/sshd_config/
    # 配置RSA认证
    RSAAuthentication yes 
    PubkeyAuthentication yes 
    # 生成密钥
    AuthorizedKeysFile /home/git/.ssh/authorized_keys
    

    2.4 添加密钥文件

    su - git
    cd /home/git
    mkdir .ssh
    touch .ssh/authorized_keys
    
    chmod 700 /home/git/.ssh
    chmod 600 /home/git/.ssh/authorized_keys
    
    # 添加链接
    PATH=$PATH:$JAVA_HOME/bin:/usr/local/git/bin
    ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
    ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack
    

    3. 客户端

    3.1 密钥生成

    # 配置个人的用户名称和电子邮件地址:
    $ git config --global user.name "runoob"
    $ git config --global user.email test@runoob.com
    

    # mac    
    ssh-keygen -t rsa -C "YourEmal@163.cn"
    

    # windows
    ssh-keygen -t rsa
    

    \Users\admin\.ssh这个路径下会生成两个文件:id_rsa和id_rsa.pub

    拷贝公钥id_rsa.pub文件内容到服务器

    3.2 初始化

    • clone

    # clone默认端口
    git clone git@x.x.x.x:test
    # clone非默认端口
    git clone git@193.112.123.187:/base/server/local/data/git/test.git
    
    • init

    # 在目录中创建新的 Git 仓库
    git init 
    

    3.3 pull

    # 拉取最新远程代码
    git pull  
    

    3.4 add

    # 提交所有变化
    git add -A  
    # 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
    git add -u  
    # 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
    git add .  
    # 查看项目的当前状态。-s 参数,以获得简短的结果输出
    git status 
        "M" 状态表示有改动
        "UU"冲突
    

    3.5 diff

    # 尚未缓存的改动:
    git diff
    # 查看已缓存的改动: 
    git diff --cached
    # 查看已缓存的与未缓存的所有改动:
    git diff HEAD
    # 显示摘要而非整个 
    diff:git diff --stat
    

    3.6 commit

    git commit -am "提交说明注释" 
    

    3.7 reset

    • 本地

    # 取消已缓存(add 添加)的内容。
    git reset HEAD 
    # 提交一次新的更新改为上个版本
    git revert
    

    3.8 rm

    # 删除已跟踪文件
    git rm <file>
    # 删除修改过并且已经放到暂存区域文件用强制删除选项 -f
    git rm -f <file>
    # 仅是从跟踪清单中删除,使用 --cached    
    git rm --cached <file>
    # 递归删除
    git rm –r * 
    

    3.9 mv

    # 移动或重命名
    git mv ole new
    

    3.10 branch

    # 列出分支
    git branch
    
    # 创建分支
    git branch (branchname)
    
    # HEAD指针切换分支
    git checkout (branchname)
    # 创建并切换新分支
    git checkout -b (branchname) 命令来
    
    # 合并到当前分支,冲突修改后add
    git merge ..
    git cherry-pick 
    # 当前分支副本合并到..
    git rebase ..
    
    # 移动分支-f
    git branch -f   
    
    # 删除分支
    git branch -d (branchname)
    
    # 撤销变更
    git reset
    git revert
    

    3.11 log

    # 查看提交历史, --oneline 简洁版本, --graph 拓扑图
    git log --oneline --graph
    # --reverse 逆向显示所有日志
    git log --reverse --oneline
    # 查找指定用户的提交日志
    git log --author=author
    # 指定日期,--since 和 --before,也可以用 --until 和 --after。
    # --no-merges 隐藏合并提交
    git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges
    

    tag

    # 给最新一次提交打上(HEAD)"v1.0"的标签
    git tag -a v1.0 命令
    

    push

    #查看当前配置的远程仓库
    git remote
    #添加远程库
    git remote add [origin] [git@url]
    # 推送
    git push [-u] origin master
    

    提取远程仓库

    #从远程仓库下载新分支与数据:
    git fetch
        #该命令执行完后需要执行git merge origin/master远程分支到你所在的分支。
    
    #从远端仓库提取数据并尝试合并到当前分支:
    git merge
    
    #删除远程仓库
    git remote rm [别名]
    

    相关文章

      网友评论

          本文标题:git笔记

          本文链接:https://www.haomeiwen.com/subject/ouvbvqtx.html