git操作

创建自定义git仓库:
    创建组:groupadd git
    创建用户:useradd git -m -s /sbin/nologin -d /home/git -g git
    创建文件夹:mkdir repo.git
    修改所有者:chown -R git:git repo.git
    进入目录:cd repo.git
    初始化仓库:git --bare init
    -----或者直接 git init --bare repo.git 创建仓库之后再修改所有者
    添加客户端公钥

安装git:
    Linux下可以使用yum install git 进行安装
    Windows下使用官网的安装包进行安装
    安装之后使用
        git config --global user.name "username"
        git config --global user.email "email"
        设置用户名和邮箱
    
创建版本库:
    使用git init命令创建一个版本库,会在你定义的目录下创建一个 .git的目录

添加文件到版本库:(注意不要使用记事本编辑文件)
    使用git add filename 将文件添加到暂存区,可以添加多个
    使用git commit 将文件提交到仓库,或者使用git commit -m "说明信息" 为每次提交添加说明

查看状态:
    使用git status查看提交状态

比较本地与仓库的修改:

    使用git diff 进行比较 git diff HEAD -- filename

版本回退:
    使用git log 查看最近提交的日志,太多的使用git log --pretty=oneline 显示一行  git log --pretty=oneline --abbrev-commit只查看commit信息
    使用git reset --hard HEAD^ 回退到上一个版本,HEAD表示当前版本,加上 ^ 表示上一个,^^表示上两个,或者使用~10表示、
    使用git reset --hard 版本号  回退到指定版本

查看每一次操作的命令:
    使用git reflog 查看每次操作的日志

撤销修改(覆盖本地文件):
    使用 git checkout -- filename 将仓库中的文件替换到本地
    
删除文件:
    直接删除文件之后----
        确定删除:使用git rm filename删除文件并使用git commit 提交
        误删除:使用git checkout -- filename 恢复文件
创建ssh key:
    使用ssh-keygen -t rsa -C "email addr",生成的两个文件中id_rsa.pub表示公钥文件,验证需要的就是公钥文件

添加远程库:
    使用git remote add origin url 添加远程库,期中origin是远程库的默认名称,可以修改
    
推送本地文件:
    使用git push -u origin master 将本地的主要分支推送到远程,第一次推送添加-u参数
    --之后添加直接使用 git push origin master
    注意:如果是GitHub并报错403的话,修改目录下 .git/config 文件中的origin下的url为 https://yourname@github.com/yourname/test/git
    出现Gtk-WARNING **: cannot open display:问题时控制台执行:
        [ -n "$SSH_CONNECTION" ] && unset SSH_ASKPASS

从远程库克隆:
    使用 git clone url 从远程库克隆项目

创建合并分支:
    查看分支:git branch
    创建分支:git branch <name>
    切换分支:git checkout <name>
    创建+切换分支:git checkout -b <name>
    合并某分支到当前分支:git merge <name>
    删除分支:git branch -d <name>
    
解决冲突:
    使用git log --graph 查看分支合并图
    手工解决冲突并重新添加并提交文件

禁用fast forward(快速合并):
    使用git merge 合并分支的时候使用 git merge --no-ff 分支名  进行普通合并,或者加上-m 参数添加信息

保存、恢复当前工作:
    使用栈 git stash 保存当前未提交的修改
    查看保存的工作git stash list
    恢复:恢复指定场景需要指定名称,例如:git stash apply stash@{0}
        1 使用git stash apply 恢复工作,并使用git stash drop 删除保存的工作
        2 使用git stash pop 恢复工作

删除未提交分支:
    使用git branch -D 分支名  强制删除未提交但不使用的分支

查看远程信息:
    使用git remote -v 查看远程仓库信息

多人协作:
    每个人使用git checkout -b dev origin/dev 创建本地分支
    推送修改之前使用git pull 将远程仓库与本地修改合并,并解决冲突
    冲突解决之后再次提交并推送远程仓库
    合并失败使用 git pull 远程名 分支名  不同的项目合并需要添加 --allow-unrelated-histories
    如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。

标签tag管理:
    创建标签:
        使用git tag name创建标签(为当前最新提交)
        使用git tag name id 创建历史分支标签
        git tag -a v0.1 -m "version 0.1 released" commitID -a参数指定名称,-m指定说明信息
    查看标签:
        使用git tag查看标签
        使用git show tagname 查看标签详细信息
    删除标签:
        使用git tag -d name 删除本地标签
        使用git push origin :refs/tags/name 删除远程标签
    推送到远程:
        使用git push origin name 推送一个标签
        使用git push origin --tags 推送全部
忽略特殊文件:
    在本地创建一个 .gitignore 的文件,将要忽略的文件名或者目录添加在里面
    同时该文件需要上传仓库
    添加了忽略之后强制添加文件使用 git add -f filename

设置别名:
    使用git config [--glb=obal] alias.别名 命令   为命令设置别名--global为全局设置
    全局设置在用户主目录下的.gitconfig中
    仓库配置在仓库中的.git/config中


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值