代码仓库管理

git

仓库管理

  • git init:初始化一个git仓库。Git使用git init命令来初始化一个Git仓库,执行完git init命令后,会生成一个.git目录,该目录包含了资源数据,且只会在仓库的根目录生成。
  • git clone:clone一个git仓库
在当前目录下生成.init文件夹,并且会默认生成一个master分支
git init 
 
指定的目录下生成仓库 
git init newDir 

使用git clone命令可以从Git仓库拷贝项目,url为git仓库地址,directory为本地目录
git clone <url> [directory] 

git 克隆指定分支
git clone -b <name> <url>

git 查看远程仓库地址
git remote -v

git 取消关联仓库
git remote rm origin

git 添加远程仓库
git remote add [远程仓库别名] <远程仓库URL>

获取远程分支
git fetch origin
 
git 修改指定远程仓库的push地址
git remote set-url --push <远程仓库别名> <远程仓库URL>

git 给origin添加多个远程仓库地址,实现一起推送至多个仓库
git remote set-url --add origin <远程仓库URL>

git 删除origin添加的多个远程仓库地址
git remote set-url --delete origin 地址

分支管理

  • git branch:查看分支命令
  • git checkout:切换分支命令
  • git merge:合并分支命令
/** git branch:可以查看分支,也可以创建分支 */
git branch         // 查看当前分支,本地分支
git branch dev         // 创建dev分支  (dev可选)
git branch -d dev         // 删除dev分支
git branch -r         // 查看远程分支
git branch -a         // 查看所有分支 (包括远程分支)
git branch -u origin/远程分支名   // 将本地新建的分支与远程分支相关联
git branch --set-upstream-to origin    // 远程分支名
git branch -vv         // 查看本地分支与远程分支的映射关系
git branch --unset-upstream        // 撤销本地分支与远程分支的关系

/** git checkout:切换分支 */
git checkout master         // 切换至master分支
git checkout -b dev         // 创建dev分支并切换至dev分支
git checkout -b dev origin/dev         // 创建远程分支到本地

/** git merge:合并分支 */
git merge dev          // 合并dev分支至当前分支

git fetch origin        // 不指定分支名就是远程全部分支
git fetch origin XXX    // 拉下远程指定的分支
git remote update origin --prune        // 更新远程分支列表

git push origin --delete Chapater6        // 删除远程分支Chapater6
git branch -d  Chapater6        // 删除本地分支 Chapater6


// 设置上游分支
适用远程分支已存在
$ git branch --set-upstream-to=origin/<远程分支> <本地分支>
git push --set-upstream origin cloud_desktop_dev

适用远程分支不存在,上传本地分支到远程,同是把上传后的远程分支设置为本地分支的上游分支
git push set-upstream origin HEAD:<远程分支>

取消分支上游
$ git branch --unset-upstream

查看上游:
可以通过git status 、 git checkout <分支>、git branch -vv命令查看

提交拉取

git log 命令查看

git log --oneline         // 查看历史记录的简洁版本
git log --graph        // 查看历史中什么时候出现了分支、合并
git log --reverse         // 逆向显示所有日志
git log --author=user        // 查找用户user的提交日志
git log --since=[1999-9-9]        // 指定时间开始
git log --before=[1999-9-9]        // 指定时间前 
git log --until=[1999-9-9]        // 指定时间结束
git log --after=[1999-9-9]        // 指定时间后
git log --no-merges        // 选项以隐藏合并提交
git log --decorate         // 标记让git log展示所有指向每个提交引用

合并不同仓库

git status
git reset --hard
git log                         // 对照commit是否是最新
git checkout -b backup dev      // 切换新分支backup用于本地合并
git branch -d dev               // 删除旧的分支,防止和新仓库分支重名
git remote rm origin            // 取消关联仓库
git remote add origin 仓库名     // 关联仓库
git fetch origin                // 拉取远程全部分支
git checkout -b 分支 origin/分支
git merge backup                // 合并

疑难杂症

文件名之前是小驼峰 ,改成大驼峰后提交,git仓库没变化 还是小驼峰,修改文件名提交不到远处仓库

// 检查是否忽略大小写,返回true 或 false,true是忽略大小写
git config --get core.igonrecase

// 修改成false
git config core.igonrecase false

git pull后拉下来的代码不是远程仓库中最新的

git fetch --all  
git reset --hard origin/master 
git pull

地址

fetch地址:拉取地址

push地址:推送地址,可绑定多个实现同时推送至多个仓库

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值