美文网首页
Git 学习及使用

Git 学习及使用

作者: Steven054 | 来源:发表于2017-03-10 11:29 被阅读8次
风景.jpg

钩子:

gitdir=$(git rev-parse --git-dir); scp -p -P 29418 姓名
@xxx.xxx.xxx.xxx:hooks/commit-msg ${gitdir}/hooks/

一 、设置Git的user name和email:

$ git config --global user.name “user name"
$ git config --global user.email “your email”

二、生成SSH密钥过程:

生存密钥:

$ ssh-keygen -t rsa -C “your email”

按3个回车,密码为空。

Your identification has been saved in /home/tekkub/.ssh/id_rsa.

Your public key has been saved in /home/tekkub/.ssh/id_rsa.pub.

The key fingerprint is

得到了两个文件:id_rsa和id_rsa.pub;位于~/.ssh目录下

三、添加ssh密钥

  • 这要添加的是“id_rsa.pub”里面的公钥将id_rsa.puh中的内容复制到git服务器

四、复制代码:

1、clone代码 git clone git@xxxxx.git

git 常用命令
checkout 切换分支 
branch 创建分支
fetch 拉取分支 
merge 合并分支 
pull 拉取分支,相当于fetech + merge 
push 推送分支 

命令不要从这里复制,可能有中文符号!!!自己敲

  • 1、更新代码
    git pull —rebase
  • 如果有冲突,解决冲突,然后:
    git add . git rebase —continue
  • 2、提交本地A分支代码到远端A分支
    git push origin A
  • 3、提交本地分支A到远端分支B(前提是本地分支A已经关联到远端分支B)
    git push origin A:refs/for/B
  • 4、************新建并切换到分支A,同时将A关联到远端分支B************
    git checkout -b A -t origin/B
  • 5、已经建立分支A,想A关联到远端分支C
    git branch --track A origin/C 或者 git branch --set-upstream-to origin/C (经切换到分支A)
  • 6、本地分支A已经关联到远端分支,解除关联
    git branch --unset-upstream A
    ` 7、删除远程分支A
    git push origin :A
    或者
    git push origin --delete A
    或者
    ``git branch -d -r A (-d -r两个参数都不能少)```
  • 8、删除本地分支A
    git branch -D A
  • 9、重命名分支A为B
    git branch -m | -M A B (重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名)
  • 10、打tag,
    例如tag名为:demo_v2.1.2 git tag -a demo_v2.1.2 -m “创建tag demo_v2.1.2”
  • 11、显示tag
    git tag
  • 12、gi获取远程tag qjs_v2.1.2
    git fetch origin qjs_v2.1.2
  • 13、推送tag到远端 git push tags (所有tag)
    git push origin qjs_v2.1.2 (只推送qjs_v2.1.2)
  • 14、删除tag qjs_v1.0
    git push origin --delete tag qjs_v1.0 (删除远程)
    git tag -d qjs_v1.0 (删除本地)
  • 15、回滚已经commit的内容
    git log查看需要回滚到那个版本,复制commit id
    git reset --hard [commit id]
  • 16、回滚已经add,未commit的内容
    git checkout . (回滚所有)
    或者
    git checkout [file1] (回滚file1)
  • 17、回滚未add的文件
    git clean .(所有的)
    单个文件可直接用rm命令
  • 18、本地分支和远程分支同步(当远程分支有新建或删除)
    git fetch -p
  • 19、将A分支的一个或者几个commit,合并到B分支
    git checkout B
    然后
    git cherry-pick <A-commit-id>

    git cherry-pick <A-start-commit-id>..<A-end-commit-id>

    git cherry-pick <A-start-commit-id>^..<A-end-commit-id>
    后两种情况说明:
    前者表示把<start-commit-id>到<end-commit-id>之间(左开右闭,不包含start-commit-id)的提交cherry-pick到当前分支;
    后者表示把<start-commit-id>到<end-commit-id>之间(闭区间,包含start-commit-id)的提交cherry-pick到当前分支。
    其中,<start-commit-id>在时间上必须早于<end-commit-id>
  • 20.可以通过”git config --list”命令来查看你的设置
  • 21.git log --pretty=oneline --abbrev-commit 查看版本历史列表
  • 22.git reflog 查看提交过的所有文档

相关文章

网友评论

      本文标题: Git 学习及使用

      本文链接:https://www.haomeiwen.com/subject/lwengttx.html