Git学习

  1. 初始化git仓库(将新建目录变为git可管理的仓库):git init
  2. 添加文件到git仓库:
    a) 添加文件:Git add :git add hell.txt
    b) 上传到git仓库:Git commit –m “add 1 files”(“此处应为改动记录”)
  3. 查看仓库的当前状态(有无被修改):git status
  4. 查看仓库的修改记录:git diff
  5. git status告诉你有文件被修改过,用git diff可以查看修改内容
  6. HEAD代表当前版本,git reset –hard commitID可以再各个版本进行穿梭:回退到上一个版本:git reset –-hard HEAD^
  7. 查看提交历史:git log
  8. 查看命令历史,可以看到commitID,从而选择回退到哪个版本:git reflog
  9. .get是git的仓库,里面最重要的有暂存区(stage/index),还有git创建的master分支,指向master分支的指针:HEAD
  10. 暂存区:所有修改的内容都会放到暂存区(stage/index)
  11. 每一次修改,如果不add到仓库的 (暂存区),那么提交commit的内容就不会包含修改的内容
  12. 将文件在工作区的修改全部撤销:git checkout –- file
  13. 将修改的文件从暂存区回退到工作区(撤销修改)git reset HEAD file
  14. 删除仓库内的某个文件:git rm files
  15. 如果在工作区删除了xxx.txt文件,可以git checkout – file找回
  16. 如果暂存区删除了xxx.txt文件,可以git reset HEAD file找回
  17. 远程仓库需要本地创建sshkey:打开git bash->输入cd ~/.ssh,检查本地是否存在sshkey,没有继续输入:ssh-genkey –t rsa –C “邮箱”,不设置密码,回车,会有id_rsa私钥,我们需要将id_rsa.pub公钥配置到git的sshkey中,这样就可以与git建立连接,变成自己的托管平台了
  18. 在GitHub新建一个repository(远程仓库),取个名,其他默认配置,这样远程仓库就建好了
  19. 本地与远程仓库建立连接:在本地仓库打开命令窗口,输入:git remote add origin ssh地址
    a) ( )
    b) 备注:此处这种操作会导致将本地master分支内容push到远程仓库时报错
    i.
    c) 这样chrome出来的解决办法就是需要更换建立连接的地址:
    i. git config –global url.”HTTPS的地址”.insteadOf ssh地址
    d) 以上命令就更换了建立连接的地址,将ssh地址更换成了HTTPS,此时在将本地master分支的内容push到远程仓库就OK了:git push –u origin master
    i. 备注:首次push加-u是为了不仅将本地内容push到远程仓库,还将本地master分支与远程master分支关联,以后推送或拉取就会更加方便:git push origin master
  20. 将某个分支与当前分支合并:git merge 分支
  21. 打印带参数的log查看分支合并情况:git log –-graph –-pretty=oneline –abbrev-commit(–pretty=oneline –abbrev-commit:表示单列显示缩写的commit)

会在文件中进行标记
24. 管理分支:本章逻辑较复杂,个人理解:
a) fast forward表示快进,即:直接git merge dev是为快速将dev合并到master分支,这样操作的本质为:将master的指针(HEAD)变为了dev的指针,用的还是dev的commitID
b) 加入了—-no-ff:则会重新提交(commit)一次,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息
25. 接24合并分支:git merge --no-ff –m “” dev
26. 保存当前工作现场,可以切换到其他分支修bug:git stash
a) 查看工作现场在哪儿:git stash list
b) 恢复工作现场并删除stash内容:git stash pop
i. 仅仅恢复不删除:git stash apply
ii. 删除stash的内容:git stash drop

  1. 内容指:stash放工作现场的内容
  2. 建立本地分支和远程分支的关联,使用git branch --set–upstream branch_name origin/branch_name
    a) 备注:branch_name是分支名称
  3. 在本地创建和远程分支对应的分支,使用git checkout -b branch_name origin/branch_name,本地和远程分支的名称最好一致
  4. 查看远程库信息:git remote –v
  5. 从远程抓取分支(抓取远程的新提交):git pull
  6. 本地新建分支:git branch 分支名称
  7. 切换分支:git checkout 要切换的分支名称
  8. 提交分支数据到远程服务器
    git push origin :
    例如:
    git push origin branch_abc: branch_abc 一般当前如果不在该分支时,使用这种方式提交。如果当前在 branch_abc 分支下,也可以直接提交git push
  9. git fetch 令更新remote索引(更新后,可使用git branch –a 查看有远程分支)
  10. 删除远程分支:git push origin :dbg_lichen_star(推送一个空分支到远程分支,其实就相当于删除远程分支)or git push origin --delete dbg_lichen_star
  11. 远程已有master分支,与本地分支关联只需在本地执行:git pull origin master
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值