使用前的准备
一、进入.ssh文件夹。
1cd ~/.ssh 2//若没有.ssh文件夹,则使用如下命令创建: 3mkdir ~/.ssh
2、手动设置email和用户名则指令如下:
1git config --global user.name "myname" 2git config --global user.email "test@gmail.com"
3 生成shh公钥
1ssh-keygen 2//或者 3ssh-key -t rsa -C "coiggahou@foxmail.com" 4//然后查看生成的公钥并添加到shh key 5cat ~/.ssh/id_rsa.pub
一. 覆盖本地
1. 项目仓库clone 到本地
1.执行:git clone url
PS:url 是指远程仓库的url 链接,每一个远程项目都拥有一个远程链接。
2. 本地同步远程服务器
每次提交远程仓库之前首先要取得服务器的最新文件:$ git pull
二. 上传
1. 上传前的准备
1.首先查看哪些文件被改动:$ git status
modified: src/page/**/**.file
2. 然后 $ git add src/page/**/**.file 回车提交暂存区
PS:如果文件过多可以提交所有文件: $ git add -A
3. 接着附上提交内容格式如下:
1git commit -m "コミット日:2017/11/11 2 コミット者:UserName 3 コミット内容: Messages "
4. 最后将暂存区的文件提交到远程服务器:$ git push origin master
三. 覆盖本地时冲突
1.编辑冲突
1.首先先把本地的代码保存起来:$ git stash
这样本地的所有修改就都被暂时存储起来 。
用git stash list可以看到保存的信息: 其中stash@{0}就是刚才保存的标记。
2. 之后就可从服务器向本地pull代码:$ git pull
3. 然后回复暂存的内容:$ git stash pop stash@{0}
4. 解决文件冲突的部分:执行完步骤3时,当系统提示以下错误的时候:
1Auto-merging 路径/文件.后缀 2CONFLICT (content): Merge conflict in 路径/文件.后缀
该文件为本地与服务器所冲突的文件,打开文件后会看见以下内容:
1<<<<<<<Updated upstream 2 int i, j; 3======= 4 int i, j; 5======= 6<<<<<<<Stashed changes
其中Updated upstream 和=====之间的内容就是pull下来的内容 ;====和stashed changes之间的内容就是本地修改的内容。解决完成之后,就可以正常的提交了。
2.退回上次Commit点
git reset --hard FETCH_HEAD
四. 其他操作
1、查看config配置信息
1>>>config 配置指令 2 3git config 4 5>>>config 配置有system级别 global(用户级别) 和local(当前仓库)三个 设置先从system-》global-》local 底层配置会覆盖顶层配置 分别使用--system/global/local 可以定位到配置文件 6 7>>>查看系统config 8 9git config --system --list 10 11>>>查看当前用户(global)配置 12 13git config --global --list 14 15>>>查看当前仓库配置信息 16 17git config --local --list
2、回滚到指定版本
1//回滚到某个版本 2git reset --hard 版本号 3// 版本号可以通过git log 查看历史记录 4 5//强制提交 6git push -f origin master 7 8 9 10git diff 版本号1[:filemane] 版本号2
4、git从已有分支创建新分支
11. 切换到被copy的分支(master),并且从远端拉取最新版本 2 3$git checkout master 4 5$git pull 6 72. 从当前分支拉copy开发分支 8 9$git checkout -b dev 10 113. 把新建的分支push到远端 12 13$git push origin dev 14 154. 拉取远端分支 16 17$git pull 18 195. 关联 20 21$git branch --set-upstream-to=origin/dev 226. 再次拉取 验证 23 24$git pull