看成为一个新成员参与别人已经建好的项目中,此时远程已经有有一些分支了。html
一、克隆linux
从远程下载代码步骤以下:打开VS,切换到“团队资源管理器”,点上方“主页”右侧的下拉三角,选择项目->链接到团队项目,而后选择“克隆”,填入Git的Remote Url和要克隆到的本地目录(该目录必须为空),而后点克隆按钮便可将项目克隆到本地。git
二、本地拉取远程的一个新分支github
只需单击同步里面的 提取。缓存
常见名词解释安全
拉取(Pull):将远程版本库合并到本地版本库,至关于(Fetch+Meger)bash
获取/提取(Fetch):从远程版本库得到最新版本服务器
合并(Meger):将两个版本库进行合并操做ssh
提交(Commit):将所作的更改,存入本地暂存库curl
推送(Push):将所作的更改,存入远程版本库
同步(Pull+Push):先将远程库拉取,再将本地库推送到远程库,至关于(Pull+Push)
变基到(Switch):切换分支(双击便可切换)
git pull 从远程拉取最新版本 到本地 自动合并 merge git pull origin master。。即:git pull = git fetch + git merge
,这样可能会产生冲突,须要手动解决。
git fetch 从远程获取最新版本 到本地 不会自动合并 merge git fetch origin master git log -p master ../origin/master git merge orgin/master
实际使用中 使用git fetch 更安全 在merge以前能够看清楚 更新状况 再决定是否合并
一、在远程Github等服务器新建一个空Repositories,这里起名GitTest。
打开VS2013,新建项目GitTestProject,右键单击解决方案,选择“将解决方案添加到源代码管理器”,选择Git
同步,推送到远程仓库
注:若没有的这个选项话,也能够用git bash去操做:
链接远程仓库,在本地的命令框中输入下面的命令,即链接到了名为poster的仓库上
git remote add origin https://github.com/xxxx/yyy.git
把本地项目推送到远程仓库:
git push -u origin master
暂存想提交的文件,不想提交的右键暂存。提交临时文件,拉取再推送。
有冲突时,能够点击冲突,而后对比文件,选择使用远程的代码仍是本地代码,而后再次提交。
把某些目录或文件加入忽略规则,后发现并未生效,缘由是.gitignore只能忽略那些原来没有被追踪的文件,若是某些文件已经被归入了版本管理中,则修改.gitignore是无效的。
那么解决方法是先把本地缓存删除:
git rm -r --cached .
将本地代码从新加入
git add .
不想提交的文件,最好一开始提交 之时 就不要提交到远程。
若是提交了一次代码到远程,而后发现想撤销上次提交,即想要还原修改,转到修改还原的代码处,单击方法引用处的
在右侧便可点还原操做。而后单击同步,进行同步到远程便可
一、Git Push Error: dst refspec xxxx(分支号) matches more than one.
最近工做中遇到这样的问题,使用的是Git作版本控制,在PUSH代码的时候,出现以下错误:
初步一看,还想,怎么可能,出现两个相同的分支?表示很不解。
查看Git服务器上的分支也只有一个指定名称的分支,最后无心间发现服务器上有一个和分支名称相同的tag,按照项目组的习惯,tag通常都是以时间做为名称的,这里怎么会出现这个,好奇中删掉它重试,果真,Git把tag和分支搞在一块儿了,tag名称不能和分支名称彻底相同,不知道这是Git个别版本的bug仍是就这样机制。
二、git中进入带有空格的目录下的解决办法
好比,要进入Program Files目录下,有两种方法:
$ cd "Program Files"
$ cd Program" "Files
3.Git clone 错误 | error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
4.Permanently added the RSA host key for IP address '192.30.255.113' to the list of known hosts.
为IP地址192.30.255.113的主机(RSA链接的)持久添加到hosts文件中。
5.Windows下git出现Permission denied的解决办法
本地git bash 使用git clone git@github.com:***.git方式下载github代码至本地时须要依赖ssh key,遇到权限不足问题时通常都是SSH key失效或者SSH key不存在,从新建立SSH key通常就能够解决问题;
6.Github仓库太大,公司限制速度,下载不了
能够尝试用 码云 去搜下是否有相同的库
七、Git每次push都须要输入用户名和密码
问题:
已经添加了 SSH key,可是 push 的时候,须要输入,用户名和密码
缘由:
出现这种状况的缘由是咱们使用了http的方式clone代码到本地,相应的,也是使用http的方式将代码push到服务器。
git clone https://github.com/xxxxx
这就容易致使这个问题的出现。而若是采用ssh方式的话,是这样clone代码的:
git clone git@github.com:xxxxx
解决办法:
将http方式改成ssh方式便可。
1.先查看当前方式:git remote -v
2.把http方式改成ssh方式。先移除旧的http的origin:git remote rm origin
3.再添加新的ssh方式的origin:git remote add origin git@github.com:xxxx/linux-system-programming.git
4.改动完以后直接执行git push是没法推送代码的,须要设置一下上游要跟踪的分支,与此同时会自动执行一次git push命令,此时已经不用要求输入用户名及密码啦!
git push --set-upstream origin master
参考: