git 配置 https和ssh 免密码登录

一. 区分https clone 和 ssh clone

不同的克隆方式导致校验方式不同,对应的免秘方式也不一样。
https通过记住账号密码免登,ssh通过校验生成的密钥免登。 通常都用ssh校验。

二.https免密配置方法

设置配置 .git/config

git config --global credential.helper store
[credential]
helper = store

输入一次账号密码后第二次就会记住账号密码。

三.ssh免密配置方法

配置信息

git init
git config --global user.name '用户名'

git config --global user.email '用户邮箱'

执行生成公钥和私钥的命令:

ssh-keygen -t rsa

按回车3下     一般都是直接不写为空   直接回车

执行查看公钥的命令:

cat ~/.ssh/id_rsa.pub

文件windows位置:

github添加 你的ssh操作步骤:

clone项目搞定:

git clone  git@github.com:'项目url'

git常用操作命令

提交步骤:

git status                查看状态
git add . 添加所有的修改文件
git status 查看状态
git commit -m '备注信息' 添加备注
git push origin 分支名 提交到分支上

分支合并master:

git checkout master             切到master分支
git pull origin master 拉取master
git merge origin 需合并分支名 合并分支
git status 查看状态
git push origin master 推送master

--git本地项目代码上传至远程仓库操作 :

初始化:
git init
本地第一次安装git,先配置基本的信息:
git config--global user.name '用户名'
git config --global user.email '用户邮箱'
本地仓库与远程仓库关联: 
git remote add origin '项目url' 更新项目,确保没有和远程仓库的代码有冲突:
git pull --rebase origin master 把项目复制到,本地git目录下准备上传。 操作提交master步骤:
git add .
git status
git commit -m '备注信息'
git push origin master -f 第一次使用,强制提交master分支.(以后提交最好不要使用!)

--文件目录操作命令

mkdir *   创建一个空目录 *指目录名
pwd 显示当前目录的路径。
cat * 查看*文件内容
git rm * 删除**文件

--git初始化操作

git init                   把当前的目录变成git仓库,生成隐藏.git文件。
git remote add origin url 把本地仓库的内容推送到GitHub仓库。
git clone git@url/test.git 从远程库克隆
git add * 把x文件添加到暂存区去。
git commit –m "*" 提交文件 –m 后面的是注释。

 --git 克隆分支

git clone xxx.git                最简单直接的命令
git clone xxx.git "指定目录" clone到指定目录
git clone -b branchname xxx.git clone时创建新的分支替代默认Origin HEAD(master)

--查看命令

git status        查看仓库状态
git diff * 查看X文件修改了那些内容
git log 查看历史记录
git reflog 查看历史记录的版本号id(记录你的每一次命令,不论是否提交)
git log --pretty=oneline 如果信息量太多可以进行比较好的列表显示

--版本回退

git reset –hard HEAD^       回退到上一个版本
git reset --hard HEAD~第几个 如果想回退到第3个版本,使用git reset –hard HEAD~3
git reset --hard 057d 回退到某一个具体的版本号

 --撤销修改

git checkout file-name 恢复某个已修改的文件(撤销未提交的修改):
git revert HEAD 还原最近一次提交的修改:
git revert commit-id 还原指定版本的修改

--分支管理

git branch                   查看本地所有的分支
git branch -a 查看远程所有的分支
git branch name 创建分支
git branch –d dev 删除dev分支
git push origin --delete dev 删除远程的dev分支
git branch -m dev develop 重命名分支 git checkout –b dev 创建dev分支 并切换到dev分支上
git merge dev 在当前分支上合并dev分支代
git push origin zyf-dev 把当前新疆的zyf-dev分支推送到远程库(远程仓库没有给分支则会新建立该分支) git checkout — * 把XX文件在工作区的修改全部撤销。
git checkout master 切换回master分支
git push --set-upstream origin dev 提交修改并创建远程分支dev

--tag相关操作

git tag         列出所有的tag
git tag name 打轻量标签 name
git tag -d name 删除本地的tag
git push origin --delete tag name 删除远程的tag
git show name 查看tag信息
git push origin name 将tag提交到远程

--隐藏的文件

git stash       把当前的工作隐藏起来 等以后恢复现场后继续工作
git stash list 查看所有被隐藏的文件列表
git stash apply 恢复被隐藏的文件,但是内容不删除
git stash drop 删除文件
git stash pop 恢复文件的同时 也删除文件

--查看远程库信息(git  remote的用法)

git remote       查看远程库的信息
git remote –v 查看远程库的详细信息
git remote add name url 添加远程仓库
git remote rename oldname newname 重命名仓库
git remote rm 删除仓库

--将远程分支拉取到本地

方法一:git checkout -b 本地分支名x origin/远程分支名x
方式二:git fetch origin 远程分支名x:本地分支名x

--git pull操作

git pull命令的作用是,取回远程主机某个分支的更新,再与本地的指定分支合并,基本的格式如下。
$ git pull <远程主机名> <远程分支名>:<本地分支名> 取回origin主机的next分支,与本地的master分支合并,需要写成下面这样
$ git pull origin next:master 如果远程分支是与当前分支合并,则冒号后面的部分可以省略。
$ git pull origin next 上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再做git merge。
$ git fetch origin
$ git merge origin/next 在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,
所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动”追踪”origin/master分支。
Git也允许手动建立追踪关系。
git branch --set-upstream master origin/next 上面命令指定master分支追踪origin/next分支。如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。
$ git pull origin

最新文章

  1. Scala学习(一)
  2. berkeley db 内存池 LRU算法
  3. 传统BIOS+UEFI 系统引导修复
  4. Less里css表达式的写法
  5. 打造 PHP版本 1password
  6. mysql给定一个随机数
  7. less 快捷操作
  8. win8 C 盘 突然少了 十几G 空间 原因,解决方法
  9. 记一次Oracle数据库迁移部署
  10. CentOS7安装vim7.4
  11. 教学项目之-通过Python实现简单的计算器
  12. mockServer学习
  13. Crazy-Links
  14. Mycat 介绍
  15. 第一册:lesson 107.
  16. javascript中缺少分号结尾的情况
  17. HDU 5672 String 【尺取】
  18. mysql实践总结
  19. sublime text 3 安装ES6插件
  20. Flink - Asynchronous I/O

热门文章

  1. Python 入门之 内置模块 -- 序列化模块(json模块、pickle模块)
  2. 3.学习Dispatcher
  3. IDEA配置远程git仓库
  4. 04.AutoMapper 之投影(Projection)
  5. selenium谷歌火狐插件安装
  6. EasyTest-接口自动化测试平台部署上线问题记录
  7. 【leetcode 476】. Number Complement
  8. Linux下关闭Tomcat
  9. AIX中的进程管理
  10. Codeforces1203F2. Complete the Projects (hard version) (贪心+贪心+01背包)