Git

1、配置Git
首先在本地创建ssh key:
ssh-keygen -t rsa -C "[email protected]"
后面的[email protected]改为你在github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/(C:\Users\Administrator.ssh)下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。
回到github上,进入 Account Settings(账户配置),左边选择SSH Keys,Add SSH Key,title随便填,粘贴在你电脑上生成的key。

2、为了验证是否成功,在git bash下输入:
ssh -T [email protected]
如果是第一次的会提示是否continue,输入yes就会看到:You've successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。

3、接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。
git config --global user.name "your name"
git config --global user.email "[email protected]"

4、导出远程仓库
a 打开gitbash, cd 到你要放置git代码的目录
b 克隆版本库 git clone url 例如[email protected]:username/Question_project.git
c git add 文件 git 添加文件 (事先创建好/复制来的文件夹)
d git status -s 列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交
e git commit -m '注释' 提交代码到本地仓库
f git push 提交代码到git远程仓库
进入git就可以看到自己提交的代码记录了
g 从远端服务器拉取代码 git pull

5、常见GitHub命令
版本信息
git --version 查看版本(查看git是否)
git config -l 查看配置信息
git status 查看版本库状态
git log 查看提交记录
git log -pretty=online 简化的方式显示提交记录
git init 将当前目录变成git仓库

1 登录或修改name和email
git config --global user.name 'ddd'
git config --global user.email '[email protected]'
git config --global push.default matching (设置默认分支)

2 将文件添加到暂存区

  • git add 文件名 将指定文件添加到暂存区
  • git add . 将所有文件添加到暂存区

3 提交代码到版本库

  • git commit -m "说明信息"
  • git commit -a -m 提交所有文件

4 查看文件修改差异

  • git diff 文件名.后缀(未add、commit)

5 回退版本

  • git reset --hard HEAD^(上个版本),上上个版本HEAD2,前一百个版本HEAD100

6 查看所有版本号

  • git reflog

7 恢复版本号(回退掉的版本号)

  • git reset -hard 版本号
    8 撤销修改
  • git checkout --文件名
    1.readme.txt自动修改后,还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。
    2.另外一种是readme.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。

4 将本地代码推送到远端托管服务器

  • git push [origin master] 默认推送到主分支
  • git push origin 分支名 推送到指定分支
  • git pull git远程服务器拉取代码
    5 git分支管理
  • git branch 查看分支
  • git branch 新分支 旧分支 基于旧分支创建新分支
  • git branch -d 分支名 删除分支
  • git checkout 分支 切换到指定分支
  • git merge 分支名 将指定分支合并到当前分支

6 git冲突管理

  • 如果有多个人同时修改同一个文件的相同行,在推送时会有冲突
  • 发生冲突后,首先将服务器端代码拉到本地(pull),手动合并冲突
  • 然后添加修改后的代码文件,重新提交
  • 将代码推送到服务器

你可能感兴趣的:(Git)