• git用法


    1.git的配置命令

    配置命令: git config

    • 配置所有用户: git config --system[选项]

    配置文件位置:/etc/gitconfig

    • 配置当前用户: git config --global[选项]

    配置文件位置:~l.gitconfig

    • 配置当前项目: git config [选项]

    配置文件位置: project.git/config

    3.将工作内容记录到暂存区

    git add [files..]

    e.g.将a , b 记录到暂存区 git add a b
    e.g.将所有文件(不包含隐藏文件)记录到暂存区 git add * # 注意: git add * 能提交除去.开头的文件

    4.取消文件暂存记录

    git rm --cached [file]

    5.将文件同步到本地仓库

    git commit [file] -m [message] 说明: -m表示添加一些同步信息,表达同步内容

    e.g.将暂存区所有记录同步到仓库区 git commit -m 'add files'

    6.查看commit日志记录

    git log
    git log --pretty=oneline

    7.比较工作区文件和仓库文件差异

    git diff [file]

    8.放弃工作区文件修改

    git checkout -- [file] 也可以 git checkout []file]
    git mv a b # 将a重命名为b

    9.版本回退

    1,退回到上一个commit节点

    git reset --hard HEAD^
    git reset --hard HEAD^^
    git reset --hard HEAD^^^
    注意: 一个^表示回退一个版本,以此类推,当版本回退之后,工作区会自动和当前commit版本保持一致

    2,退回到指定的commit_id节点

    git reset --hard [commit_id]

    3,查看所有的操作记录

    git reflog

    工作状态,一般用于版本的迭代。

    git tag [tag name][commit_id] -m[message] 说明: commit_id可以不写则默认标签表示最新的
    commit_id位置,message也可以不写,但是最好添加。

    e.g.在最新的commit处添加标签v1.0 git tag v1.0 -m '版本1'
    查看标签 git tag


    5.查看标签 git tag

    git tag 查看标签列表
    git show [tag_name]查看标签详细信息

    6.去往某个标签节点

    git reset --hard [tag]

    7.删除标签

    git tag -d [tag]

    保存工作区

    1.保存工作区内容

    git stash save [message] 说明:将工作区未提交的修改封存,让工作区回到修改前的状态 最新保存的工作区在最上面

    2.查看工作区列表

    git stash list

    3.应用工作区 git stash apply stash@{1}

    git stash apply [stash@{n}]

    4.删除工作区

    git stash drop [stash@{n}] 删除某一个工作区
    git stash clear 删除所有保存的工作区

    分支管理

    git branch
    git branch -r
    git branch -a
    git branch [分支名] 创建分支
    git checkout [分支名] 切换到分支
    git checkout -b [分支名] 创建并进入该分支

    1. 删除分支

    git branch -d [branch] 删除分支
    git branch -D [branch] 删除没有被合并的分支

    远程仓库

    2.共享仓库

    在git仓库中bare属性为True的共享仓库可以很好的和远程仓库进行交互

    创建步骤∶

    • 选择共享仓库目录,将该目录属主设置为当前用户

    mkdir gitrepo
    chown tarena:tarena gitrepo # 将文件 gitrepo 的拥有者设为 tarena,群体的使用者 tarena :
    Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令。 chown 需要超级用户 root 的权限才能执行此命令。只有超级用户和属于组的文件所有者才能变更文件关联组。非超级用户如需要设置关联组可能需要使用 chgrp 命令。

    chown [-cfhvR] [--help] [--version] user[:group] file...
    参数 :

    • user : 新的文件拥有者的使用者 ID
    • group : 新的文件拥有者的使用者组(group)
    • -c : 显示更改的部分的信息
    • -f : 忽略错误信息
    • -h :修复符号链接
    • -v : 显示详细的处理信息
    • -R : 处理指定目录以及其子目录下的所有文件
    • --help : 显示辅助说明
    • --version : 显示版本

    把 /var/run/httpd.pid 的所有者设置 root:
    chown root /var/run/httpd.pid

    将文件 file1.txt 的拥有者设为 runoob,群体的使用者 runoobgroup :
    chown runoob:runoobgroup file1.txt

    将当前前目录下的所有文件与子目录的拥有者皆设为 runoob,群体的使用者 runoobgroup:
    chown -R runoob:runoobgroup *

    把 /home/runoob 的关联组设置为 512 (关联组ID),不改变所有者:
    chown :512 /home/runoob


    查看进程
    ps -e |grep ssh


    2.删除远程主机

    git remote rm[origin]

    3.查看连接的主机

    git remote 注意:一个git项目连接的远程主机名不会重复

    4.将本地分支推送给远程仓库

    git push origin [tag] 推送本地标签到远程
    git push -u origin master 推送本地分支到远程,并保存连接,下次直接git push 就可以了
    git push origin --tags 推送本地所有标签到远程
    git push origin --delete tag [tagname]删除远程仓库标签
    git branch -a 查看所有分支
    git branch -r 查看远程分支

    1.从远程获取项目

    git clone tarena@127.0.0.1:/home/tarena/gitrepo/tedu.git 注意:获取到本地的项目会自动和远程仓库建立连接

    4.将本地分支推送给远程仓库

    git push -u origin master 将master分支推送给origin主机远程仓库,第一次推送分支使用-u表示与远程对应

    5.删除远程分支

    git branch -a 查看所有分支
    git push origin[:branch] 删除远程分支

    6.其他推送方法

    git push --force origin 用于本地版本比远程版本|旧时强行推送本地版本
    git push origin [tag]推送本地标签到远程
    git push origin --tags 推送本地所有标签到远程
    git push origin --delete tag [tagname]删除远程仓库标签

    git的使用

    基础命令:

    git init
    git status
    git add
    git commit
    git log
    git diff

    版本控制

    git reset --hard HEAD^ | commit_id | tag
    git reflog

    工作区保存

    git stash
    git reflog

    分支处理

    git remote add |rm
    git clone

    上传

    git push -u origin branch

    获取

    git pull | git fetch

    写入自己的博客中才能记得长久
  • 相关阅读:
    分布式事务的四种解决方案
    uber-go/guide 的中文翻译
    域名解析-CNAME
    Nginx节点存活状态检查
    Laravel核心解读--中间件(Middleware)
    Mac dyld: Library not loaded: /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib
    前缀树算法实现路由匹配原理解析
    原创-实用salt部署文档(持续更新)
    线上案例-调参-设置滑动窗口提高视频云播放性能
    NGINX日志割切
  • 原文地址:https://www.cnblogs.com/heris/p/14305756.html
Copyright © 2020-2023  润新知