git随笔

git安装好后基本设置

Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址

# 设置用户名
git config --global user.name "Your Name"
 # 设置邮箱
git config --global user.email "email@example.com"
创建版本库

选择一个合适的地方,创建一个空目录,
这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”:

git init

在仓库中创建文件后,第一步,用命令git add告诉Git,把文件添加到仓库,例如readme.txt文件:

git add readme.txt

第二步,用命令git commit告诉Git,把文件提交到仓库:

git commit -m "wrote a readme file"

解释一下git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录

为什么Git添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如

git add file1.txt
git add file2.txt file3.txt
git commit -m "add 3 files."

如果对readme.txt进行了修改,使用 git status命令看看结果,git diff这个命令查看修改内容,然后继续

git add readme.txt
git status
git commit -m "add distributed"
git status
版本回退

git log 查看历史提交
git reset --hard commit_id 进入指定版本
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本`

删除文件
  1. 删除本地文件
  2. 版本库中删除git rm file_name
  3. git commit -m "remark"
另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本

git checkout -- file_name

远程仓库
  1. 创建SSH Key ssh-keygen -t rsa -C "youremail@example.com"
    你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
    如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人
  2. 登陆GitHub,打开“Account settings”,“SSH Keys”页面,然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容。GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送
  • 关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git
  • 关联后,使用命令git push -u origin master第一次推送master分支的所有内容
  • 此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改
分支

首先,创建dev分支,然后切换到dev分支:

git checkout -b dev

git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

git branch dev
git checkout dev

然后,用git branch命令查看当前分支:

git branch

git branch命令会列出所有分支,当前分支前面会标一个*号
然后,我们就可以在dev分支上正常提交,比如对readme.txt做个修改
然后提交:

git add readme.txt
git commit -m "branch test"

现在,dev分支的工作完成,我们就可以切换回master分支:

git checkout master

切换回master分支后,再查看一个readme.txt文件,刚才添加的内容不见了!因为那个提交是在dev分支上,而master分支此刻的提交点并没有变。现在,我们把dev分支的工作成果合并到master分支上:

git merge dev

合并完成后,就可以放心地删除dev分支了:

git branch -d dev

删除后,查看branch,就只剩下master分支了:

git branch

Git鼓励大量使用分支:

  • 查看本地分支:git branch
  • 查看本地和远端分支:git branch -a
  • 创建分支:git branch <name>
  • 切换分支:git checkout <name>
  • 创建+切换分支:git checkout -b <name>
  • 合并某分支到当前分支:git merge <name>
  • 删除分支:git branch -d <name>
  • 克隆分支:git clone -b branch_name branch_https
拉取远程分支到本地
  1. 本地建立仓库git init
  2. 本地仓库与远程仓库关联git remote add origin http_xxxx
  3. 拉取远程分支到本地git pull origin branch_remote:branch_local
推送本地分支到远程分支
  1. 修改文件后,git commit -a -m "xxx"
    如果是添加文件,先git add
  2. 切换到对应分支git checkout xxx
  3. 提交到远程git push origin local:remote
创建标签
  1. 首先,切换到需要打标签的分支上
  2. 敲命令git tag <name>就可以打一个新标签
  3. 可以用命令git tag查看所有标签
  • 命令git tag <tagname>用于新建一个标签,默认为HEAD,也可以指定一个commit id
  • 命令git tag -a <tagname> -m "blablabla..."可以指定标签信息
  • 命令git tag可以查看所有标签
  • 命令git push origin <tagname>可以推送一个本地标签
  • 命令git push origin --tags可以推送全部未推送过的本地标签
  • 命令git tag -d <tagname>可以删除一个本地标签
  • 命令git push origin :refs/tags/<tagname>可以删除一个远程标签

参考:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值