1.找到某服务器的项目中的HTTPS:
https://git.dev.tencent.com/用户名/项目名.git
2.创建本地git 仓库
打开此文件夹,单击右键 -> git bash here
git init
完成后,该文件夹下会生成一个隐藏的.git文件
3.添加、提交文件到本地仓库
git add .
或者 git add <filename>
git commit –m "备注描述"
4.将本地文件推送到服务器
git remote add origin https://git.dev.tencent.com/用户名/项目名.git
git push origin master
5.Push 过程中遇到的问题及处理方法
(1) 如果push时遇到无权限,没有提示输入用户名和密码直接403的问题
处理方法:直接修改.git/config文件中url:
https://用户名:密码@git.dev.tencent.com/用户名/项目名.git
或者通过命令:
git remote add origin https://用户名:密码@git.dev.tencent.com/用户名/项目名.git
(2)如果出现(non-fast-forward)错误,可以直接用-f(强制推送)
git push –f origin master
第一次提交 :
方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样;
- 初始化git仓库 :
git init
; - 提交改变到缓存 :
git commit -m 'description'
; - 本地git仓库关联GitHub仓库 :
git remote add origin git@github.com:han1202012/TabHost_Test.git
; - 提交到GitHub中 :
git push -u origin master
;
方案二 : 方案二就是不用关联GitHub仓库, 直接从GitHub冲克隆源码到本地, 项目根目录也不用创建;
- 从GitHub上克隆项目到本地 :
git clone https://用户名:密码@git.dev.tencent.com/用户名/项目名.git
,
注意克隆的时候直接在仓库根目录即可, 不用再创建项目根目录 ; - 添加文件 :
git add ./*
, 将目录中所有文件添加; - 提交缓存 :
git commit -m '提交'
; - 提交到远程GitHub仓库 :
git push -u origin master
;
之后修改提交 :
- 与GitHub远程仓库同步 :
git pull
; - 查看文件变更 :
git status
; - 提交代码到本地缓存 :
git commit -m 'description'
; - 提交代码到远程GitHub仓库 :
git push
;
报错
git push报错error: failed to push some refs to 'git@github.com:
原因:
GitHub远程仓库中的README.md文件不在本地仓库中。
解决方案:
$ git pull --rebase origin master
$ git push -u origin master
git fetch用法:更新远程代码到本地仓库及冲突处理
对于pull也可以更新代码到本地,相当于fetch+merge
Git中从远程的分支获取最新的版本到本地方式如下
- 查看远程分支
git remote -v
origin https://用户名:密码@git.dev.tencent.com/用户名/项目名.git (fetch)
origin https://用户名:密码@git.dev.tencent.com/用户名/项目名.git (push)
- 从远程获取最新版本到本地
git fetch origin master:temp
从远程的origin仓库的master分支下载到本地并新建一个分支temp
From https://github.com/com360/android-app * [new branch] master -> temp
su@SUCHANGLI /e/eoe_client/android-app (master)
- 比较本地的仓库和远程参考的区别
git diff temp
比较master分支和temp分支的不同
由于我的没有区别就没有显示其他信息
su@SUCHANGLI /e/eoe_client/android-app (master)
- 合并temp分支到master分支
git merge temp
Already up-to-date.
由于没有区别,所以显示Already up-to-date.
su@SUCHANGLI /e/eoe_client/android-app (master)
如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候, 在发布这个配置文件的时候,会发生代码冲突:
error: Your local changes to the following files would be overwritten by merge:
protected/config/main.php
Please, commit your changes or stash them before you can merge.
(1)如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:
git stash
git pull
git stash pop
然后可以使用git diff -w +文件名 来确认代码自动合并的情况.
(2)反过来,如果希望用代码库中的文件完全覆盖本地工作版本. 方法如下:
git reset --hard
git pull
其中git reset是针对版本,
(3)如果想针对文件回退本地修改,使用
git checkout HEAD file/to/restore
- 如果不想要temp分支了,可以删除此分支
git branch -d temp
如果该分支没有合并到主分支会报错,可以用以下命令强制删除git branch -D <分支名>
Deleted branch temp (was d6d48cc). su@SUCHANGLI
/e/eoe_client/android-app (master)
1.GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
2.廖雪峰 GIT
3.git fetch 的简单用法:更新远程代码到本地仓库及冲突处理