Almost 11 years after we created CodePlex, it’s time to say goodbye.  We launched CodePlex in 2006 because we, like others in the industry, saw a need for a great place to share software.  Over the years, we’ve seen a lot of amazing options come and go but at this point, GitHub is the de facto place for open source sharing and most open source projects have migrated there.

We migrated too.  As many of you know, Microsoft has invested in Visual Studio Team Services as our “One Engineering System” for proprietary projects, and we’ve exposed many of our key open source projects on GitHub (Visual Studio CodeTypeScript.NET, the Cognitive Toolkit, and more).  In fact, our GitHub organization now has more than 16,000 open source contributors – more than any other organization – and we’re proud to partner closely with GitHub to promote open source.

Over the past few years, we’ve watched many CodePlex projects migrate.  During the same period, we’ve had to address several issues, including a spam epidemic over several months in 2015, as spammers sought to take advantage of the CodePlex.com domain to boost their illicit activities.  We’ve also seen a substantial decrease in usage: as of this writing, less than 350 projects saw a source code commit in the last 30 days.

The shutdown plan

So, it’s time to say goodbye to CodePlex.  As of this post, we’ve disabled the ability to create new CodePlex projects.  In October, we’ll set CodePlex to read-only, before shutting it down completely on December 15th, 2017.

The CodePlex archive

We’ll take a final, complete backup of the site before shutting down and decommissioning the existing CodePlex site and servers.

At that time, CodePlex.com will start serving a read-only lightweight archive that will allow you to browse through all published projects – their source code, downloads, documentation, license, and issues – as they looked when CodePlex went read-only.  You’ll also be able to download an archive file with your project contents, all in common, transferrable formats like Markdown and JSON.  Where possible, we’ll put in place redirects so that existing URLs work, or at least redirect you to the project’s new homepage on the archive. And, the archive will respect your “I’ve moved” setting, if you used it, to direct users to the current home of your project.

There isn’t currently any plan to have an end date for the archive.

Migrating your data

We’re providing two first-class ways to get your data out of CodePlex.  First, we’ve partnered with GitHub to provide a streamlined import experience to help you bring your CodePlex source code, license, and documentation to GitHub.  A migration tool for issues is also in the works and will be available soon – we’ll update this blog post with more details when it’s available.  And, we’ve added a new option to your project to set an “I’ve moved” banner on your project that will direct your users to your new home. There’s a walkthrough on the CodePlex wiki to help you through the migration process.

Second, the CodePlex Archive will allow you to download an archive file, as described above.

If you’d like to migrate just your source code, you have a variety of options depending on your source control type.  For Git users, many Git hosting services, including Visual Studio Team Services and BitBucket, offer an easy import flow to help you migrate.  Bitbucket also offers import for Mercurial users.

We’re here to help

As you use these tools, CodePlex support is standing by to help via email.  GitHub is also ready to help if you encounter any issues with the import experience.

Thank you,

Brian

from:https://blogs.msdn.microsoft.com/bharry/2017/03/31/shutting-down-codeplex/

Shutting down CodePlex 03/31/2017的更多相关文章

  1. 2018/03/31 每日一个Linux命令 之 date

    date 命令主要用于查看和修改时间和时区 -- 这里主要学习基本的查看和设置时间和时区的方法. 直接显示日期 date '+%D' 效果 vagrant@hong:~$ date '+%D' 03/ ...

  2. Cheatsheet: 2017 03.01 ~ 03.31

    Web New Year, New Blog Day 10 - Using JetBrains Rider with a .NET Core Console Application JavaScrip ...

  3. Cheatsheet: 2016 03.01 ~ 03.31

    JAVA Quick Java 8 or Java 7 Dev Environments With Docker Printing arrays by hacking the JVM Mobile H ...

  4. 2016.03.31,英语,《Vocabulary Builder》Unit 08

    tend/tent: from the Latin tendere, meaning 'to stretch, extend, or spread'. tent: [tent] n. 帐篷 vt.&a ...

  5. Cheatsheet: 2015 03.01 ~ 03.31

    Web The Architecture of Algolia's Distributed Search Network No promises: asynchronous JavaScript wi ...

  6. Cheatsheet: 2014 03.01 ~ 03.31

    .NET Should I be concerned about PDB files? async and await -Simplified-Internals Web Performance tr ...

  7. ARTS Challenge- Week 1 (2019.03.25~2019.03.31)

    1.Algorithm - at least one leetcode problem per week(Medium+) 986. Interval List Intersections https ...

  8. “耐撕”团队 2016.03.31 站立会议

    1. 时间: 19:30--19:50  共计20分钟. 2. 成员: Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客:ht ...

  9. Cheatsheet: 2018 03.01 ~ 2018 03.31

    Docker A Developer's Guide to Docker: A Gentle Introduction The Advantages of Using Kubernetes and D ...

随机推荐

  1. Linux中断处理(一)

    最近在研究异步消息处理, 突然想起linux内核的中断处理, 里面由始至终都贯穿着"重要的事马上做, 不重要的事推后做"的异步处理思想. 于是整理一下~~第一阶段--获取中断号每个 ...

  2. caffe:fine-tuning

    http://blog.csdn.net/u010402786/article/details/70141261 https://zhuanlan.zhihu.com/p/22624331

  3. 前端工程化-webpack简介(一)

    本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependenc ...

  4. 洛谷P1970 花匠

    传送门 首先可以知道,如果一个序列是连续上升的,那么只需要取这一个序列中最高的元素即可,因为取其它的不能保证大于后面的.连续下降的序列同理.而这些恰好就是波峰和波谷. 所以遇到 $ j $ 比之前的 ...

  5. 采用busybox 代替android 自带的shell

    折腾了几天,被Android那点儿少得可怜的shell命令折磨的死去活来,终于下定了革命的决心.看一下怎么把渺小的toolbox替换成伟大的busybox吧.先大致描述一下Android系统中的she ...

  6. rownum和分析函数 over

    select rownum, t.* from qyuser.tr_apply_info t where rownum < 10; --rownum 对于满足 查询条件的结果,从1 开始,所以大 ...

  7. vue-swiper的使用

    写博客不是我的爱好,只是人脑毕竟空间只有那么大,有时候会忘了,好记性不如烂笔头,所以通过博客记录点点滴滴,以后可以翻出来看. vue-awesome-swiper官网链接https://www.npm ...

  8. python接口自动化测试十七:使用bs4框架进行简单的爬虫

    安装:beautifulsoup4 from bs4 import BeautifulSoup yoyo = open('yoyo.html', 'r')   # 以读的方式打开“yoyo.html” ...

  9. python 全栈开发,Day101(redis操作,购物车,DRF解析器)

    昨日内容回顾 1. django请求生命周期? - 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者po ...

  10. java判断给定路径或URL下的文件或文件夹是否存在?

    if (file.exists()) { 来判断这是不是一个文件. file.isDirectory() 来判断这是不是一个文件夹. 1.File testFile = new File(testFi ...