git命令

安装Git

那年仲夏 提交于 2019-12-20 17:20:17
非原创,个人学习笔记,详见:极客时间——苏玲老师——玩转Git三剑客视频——https://time.geekbang.org/course/intro/100021601 windows下安装 从官网下载安装包 官网地址:https://git-scm.com/book/zh/v2 安装 一路点击下一步即可 检查是否安装成功 linux下安装 centos下使用yum命令直接安装 检查是否安装成功 来源: CSDN 作者: lianflower 链接: https://blog.csdn.net/lianflower/article/details/103627744

如何删除未推送的git commit?

夙愿已清 提交于 2019-12-18 15:27:02
我不小心犯了错误的分支。 如何删除该提交? #1楼 删除最近的提交,并保留已完成的工作: git reset --soft HEAD~1 删除最近的提交, 破坏 您已完成的工作: git reset --hard HEAD~1 #2楼 进行 git rebase -i FAR_ENOUGH_BACK 并删除不需要的提交行。 #3楼 如果要将该提交移至另一个分支,请获取有问题的提交的SHA git rev-parse HEAD 然后切换当前分支 git checkout other-branch 然后 cherry-pick other-branch git cherry-pick <sha-of-the-commit> #4楼 不要删除它:仅执行一次 git cherry-pick 就足够了。 但是,如果您在错误的分支上进行了 几次 提交,那么 git rebase --onto : 假设您有: x--x--x--x <-- master \ -y--y--m--m <- y branch, with commits which should have been on master ,然后可以标记 master 并将其移动到您想要的位置: git checkout master git branch tmp git checkout y git branch -f master x

Git常用命令总结

妖精的绣舞 提交于 2019-12-15 15:14:58
寄语 死记硬背命令没有任何意义,无论linux、sql还是git等,这些万年不变的命令没必要花时间花精力刻意去记,用的多了自然就记住了,根本无需去刻意记,小时候背课文、英文单词、工作了背命令?脑子不是用来干这些体力活的。 编程的真谛是思想,编程思想、解决问题思维,而不是刻板冰冷的命令,就有那么一些以死记硬背各种命令为能事,我深鄙视之,殊不知,新手程序员和老程序员差的就是编程思想、解决问题思维(恐怕很多老程序员都没有这个意识),编程语言只是解决问题的工具,我们终极目的不是编程,是解决问题!不要本末倒置了。 ================================================ 以下为转载的【 圣骑士wind 】的文章: git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹. git clone 获取一个url对应的远程Git repo, 创建一个local copy. 一般的格式是git clone [url]. clone下来的repo会以url最后一个斜线后面的名称命名,创建一个文件夹,如果想要指定特定的名称,可以git clone [url] newname指定. git status 查询repo的状态. git status -s: -s表示short,

git高级

点点圈 提交于 2019-12-14 04:23:02
版本控制篇 本地版本控制 由于采取copy方式的这种备份方式会很容易出错,为解决这个问题,出现了很多本地版本的控制系统,大多数都是采用简单的数据库来记录文件的历次更新差异。 RCS:最流行的一种本地版本控制软件,甚至现在流行的Mac OS X系统上安装了开发者工具包之后,也可以使用rcs命令。 它的工作原理是在硬盘上保存补丁集(补丁是指文件修订前后的变化);通过应用所有的补丁,可以重新计算出各个版本的文件内容。 集中化的版本控制系统 接下来又遇到一个问题,如何让在不同系统上的开发者协同工作? 于是,集中化的版本控制系统(Centralized Version Control Systems,简称 CVCS)应运而生。 这类系统,诸如 CVS、Subversion 以及 Perforce 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。 多年以来,这已成为版本控制系统的标准做法。 这种做法带来了许多好处,特别是相较于老式的本地 VCS 来说。 现在,每个人都可以在一定程度上看到项目中的其他人正在做些什么。 而管理员也可以轻松掌控每个开发者的权限,并且管理一个 CVCS 要远比在各个客户端上维护本地数据库来得轻松容易。 这么做最显而易见的缺点是中央服务器的单点故障。 如果宕机一小时,那么在这一小时内

路标:《git使用指南》

前提是你 提交于 2019-12-11 13:00:38
重复的造轮子是浪费时间且没有意义的,所以找到好的路标可以事半功倍。 路标如下 git基本命令: https://blog.csdn.net/u012145252/article/details/80628451 git报错-refusing to merge unrelated histories: https://blog.csdn.net/u012145252/article/details/80628451 持续更新 来源: CSDN 作者: MR_Bone 链接: https://blog.csdn.net/l316278750/article/details/103489326

android最新源码(4.4.2_r1版本以上)下载

倖福魔咒の 提交于 2019-12-10 06:17:17
android 最新源码( 4.4.2_r1 版本以上)下载 参考: http://source.android.com/source/downloading.html 红色字体表示多项选择中,我所做的选择 安装 curl 工具 $ sudo apt-get install curl git 工具的安装 (按照如下方式安装最新版) 增加 ppa $ sudo apt-add-repository ppa:git-core/ppa $ sudo apt-get update $ sudo apt-get install git git 的版本号就是最新的 $ git --version git version 1.8.5.2 错误: sudo apt-add-repository ppa:git-core/ppa 时出现错误: gpg: requesting key E1DF1F24 from hkp server keyserver.ubuntu.com / gpgkeys: HTTP fetch error 7: couldn't connect to host 原因: keyserver.ubuntu.com 使用非标准的 11371 端口,而一般公司的防火墙都屏蔽掉了该端口,而允许标准的 80 端口。 所以可以以如下方式强行使用 80 端口添加软件源: $ sudo apt

mac环境 git 子命令 补全:

烂漫一生 提交于 2019-12-09 14:57:17
1.安装 :home-brew (包管理工具)—官网: http://brew.sh/ 2.命令 : /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 3.安装 bash-completion: 命令: brew install bash-completion 4.查找文件 : sudo find / -name git-completion.bash 5.拷贝文件 : cp /Library/Developer/CommandLineTools/usr/share/git-core/git-completion.bash ~/.git-completion.bash 6.source 文件: source ~/.git-completion.bash 7.修改或创建文件: ~/.bash_profile 内容为: if [ -f ~/.bashrc ]; then source ~/.bashrc fi 8.增加或修改 .bashrc 内容为: source ~/.git-completion.bash 9.重启终端 来源: oschina 链接: https://my.oschina.net/u/2274613/blog

Git hook(钩子文件)机制

我的梦境 提交于 2019-12-08 22:42:45
githooks(5) NAME githooks - Hooks(钩子) used by git SYNOPSIS $GIT_DIR/hooks/* 简介 Hooks(钩子),是一些存放于 $GIT_DIR/hooks 文件夹的小脚本,在特定条件下触发动作. 当执行'git init',几个示例hook将复制到新资源库的hooks文件夹, 但默认情况下他们都是禁用状态. 要启用一个hook(钩子),请移除其 .sample 后缀. 注意: 你还需要为这些hook(钩子)添加可执行权限(译者注: 仅针对非Windows系统, chmod u+x XXX). 然而,在新创建的资源库中, - 那些 .sample 默认已经是可执行的(译者注: 并非如此!!). 本文档描述的是当前已经等于的hooks(钩子). HOOKS(钩子) applypatch-msg 这个hook由'git am'脚本触发. 它将接受一个参数,即将提交的commit msg的临时文件路径. 如果这个hook以非0状态退出,那么'git am'将在patch(补丁)应用之前取消. 这个hook可以用于修改message(信息)文件, 用来匹配项目的规范格式(如果有的话). 也可以用于校验commit msg,并在必要时拒绝提交. 缺省的'applypatch-msg' hook, 当其启用时,将调用'commit

Git创建ssh密匙时报错Too many arguments解决方法

大城市里の小女人 提交于 2019-12-08 05:22:27
原文链接:https://blog.csdn.net/qq_31165799/article/details/72832269 如题:git创建密匙时报错Too many arguments。 运行命令ssh-keygen -t rsa -C “123456789@qq.com”时报错: Too many arguments. usage: ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa | rsa1] [-N new_passphrase] [-C comment] [-f output_keyfile] ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile] ssh-keygen -i [-m key_format] [-f input_keyfile] ssh-keygen -e [-m key_format] [-f input_keyfile] ssh-keygen -y [-f input_keyfile] ssh-keygen -c [-P passphrase] [-C comment] [-f keyfile] ssh-keygen -l [-v] [-E fingerprint_hash] [-f input

Git命令学习(3)

自闭症网瘾萝莉.ら 提交于 2019-12-06 09:44:12
一.跨团队协作 : https://www.bilibili.com/video/av24441039/?p=40 二.SSH登录 进入home目录:cd ~ 如果有ssh,删除.ssh目录:rm -rvf .ssh 生成.ssh秘钥目录:ssh keygen -t rsa -C GitHub账号: 进入.ssh目录,查看文件列表:   cd .ssh   ls -IF 查看id_rsa.pub文件:cat id_rsa.pub 登录GitHub,点击用户头像 — settings —SSH and GPG keys —New SSH 填写title,复制id_rsa.pub文件内容填入key 成功以后是以下效果: 来源: https://www.cnblogs.com/zxmonster/p/11974708.html