git ------ 基本操作

 

 

安装git    https://git-scm.com/downloads

文档:https://git-scm.com/doc

创建密钥

cd ~/.ssh/

 

~是一个目录,比如我的电脑是/c/Users/win10

如果提示 “ No such file or directory”,你可以手动的创建一个 .ssh文件夹即可

mkdir ~/.ssh

 

配置global

git config --global user.name "椰子"

git config --global user.email "995852922@qq.com"

 

生成key

ssh-keygen -t rsa -C "995852922@qq.com"

生成两个文件:id_rsa和id_rsa.pub

把id_rsa.pub里的内容粘贴到gitlab密钥中

不要移动.ssh文件夹

常用命令

  • 克隆(下载)仓库: git clone 项目地址
  • 将文件推送至缓存空间:git add 文件路径
  • 提交(上传)项目至本地仓库: git commit
  • 从远程仓库更新本地当前分支: git pull
  • 合并远端分支(master)到当前分支:git pull origin master
  • 推送本地分支至远端仓库: git push
  • 检出分支(创建和切换分支): git checkout
  • 查看本地分支: git branch
  • 查看远程分支: git branch -a    如果在网页创建了一个分支C,之后本地没有 git pull任何一个分支,输入这个命令是打印不出分支C
  • 查看状态:git status
  • 查看 commit 记录:git log,输入 q 退出log
  • 在当前路径创建仓库:git init
  • 查看远程git地址:git remote -v
  • 查看当前分支的版本历史:git log
  • 删除远端分支:git push origin --delete branch_name
  • 删除本地分分支:git branch -d branch_name
  • 合并本地分支(branch_name)到当前分支:git merge branch_name

常用操作:

回退到某个版本

先看一下版本历史:

git log

回退到上个版本:

git reset --hard HEAD^

回退到某个版本

git reset --hard adf12(commit id,可以不写全)

放弃修改,从本地仓库还原此版本:

git reset --hard

下载仓库

如果本地是空白的情况下,需要先执行如下指令,在本地创建 iogateway 仓库(仓库放在 iogateway文件夹内)和主分支( master),然后把远端主分支最新的版本内容下载到本地主分支

git clone ssh://git@59.110.19.162:22/gateway/iogateway.git
或者
git clone git@codeup.aliyun.com:5efaafefebe48b2dfc27b637/remo-camera/SSC35X_SDK.git

执行完 git clone 后,origin 的值就是 ssh://git@59.110.19.162:22/gateway/iogateway.git

可以用如下语句查看别名以及对应远程库的路径

git remote -v

 如果本地没有远端某个分支:执行 git checkout 远端分支名,本地就会创建同名分支,并且把远端分支的内容拷贝到本地同名分支

上传修改

 

把文件夹“Proj_1 - 2018071001”提交到本地缓冲区(暂存区,staged),再在把文件夹提交到本地仓库,其中"code"表示文件夹及内部文件的一个信息(属性)

git add Proj_1\ -\ 2018071001

git commit -m "code"

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

commit 之后,使用命令gitk可查看当前分支状况

$ gitk

 

给远端的参考地址取个名字(origin),然后用名字代替地址进行 push 操作

$ git remote add origin ssh://git@59.110.19.162:2222/gateway/iogateway.git
"ssh://"可以不用加 $ git push -u origin master //第一次push要加-u 把本地master推送到origin的master

$ git push -u origin chenjinhe:chenjinhe //把本地chenjinhe分支(冒号前)推送到origin的chenjinhe分支(冒号后,没有分支 -则创建)

删除文件/文件夹

  $ git rm -r 文件夹或文件名

  $ git commit -m "说明"

  $ git push

fatal: refusing to merge unrelated histories

git pull origin master --allow-unrelated-histories

 

posted @ 2018-07-10 17:55  流水灯  阅读(160)  评论(0编辑  收藏  举报